Przeglądaj źródła

* packages reorganization

peter 23 lat temu
rodzic
commit
6da3bb9300
100 zmienionych plików z 0 dodań i 28147 usunięć
  1. 0 2285
      packages/Makefile
  2. 0 32
      packages/Makefile.fpc
  3. 0 1076
      packages/asyncio/Makefile
  4. 0 9
      packages/asyncio/Makefile.fpc
  5. 0 1383
      packages/asyncio/fpasync/Makefile
  6. 0 26
      packages/asyncio/fpasync/Makefile.fpc
  7. 0 419
      packages/asyncio/fpasync/fpasync.inc
  8. 0 140
      packages/asyncio/fpasync/fpasynch.inc
  9. 0 57
      packages/asyncio/fpasync/unix/fpasync.pp
  10. 0 1226
      packages/asyncio/libasync/Makefile
  11. 0 25
      packages/asyncio/libasync/Makefile.fpc
  12. 0 120
      packages/asyncio/libasync/libasync.inc
  13. 0 525
      packages/asyncio/libasync/unix/libasync.pp
  14. 0 1234
      packages/cmem/Makefile
  15. 0 17
      packages/cmem/Makefile.fpc
  16. 0 20
      packages/cmem/README
  17. 0 127
      packages/cmem/cmem.pp
  18. 0 26
      packages/cmem/testcmem.pp
  19. 0 1343
      packages/forms/Makefile
  20. 0 22
      packages/forms/Makefile.fpc
  21. 0 38
      packages/forms/README
  22. 0 67
      packages/forms/USAGE
  23. 0 117
      packages/forms/cursorfont.inc
  24. 0 1224
      packages/forms/demo/Makefile
  25. 0 20
      packages/forms/demo/Makefile.fpc
  26. 0 44
      packages/forms/demo/arrowbutton.pp
  27. 0 9
      packages/forms/demo/bm1.xbm
  28. 0 7
      packages/forms/demo/bm2.xbm
  29. 0 109
      packages/forms/demo/borderwidth.pp
  30. 0 226
      packages/forms/demo/boxtype.pp
  31. 0 183
      packages/forms/demo/browserall.pp
  32. 0 94
      packages/forms/demo/browserop.pp
  33. 0 117
      packages/forms/demo/buttonall.pp
  34. 0 100
      packages/forms/demo/butttypes.pp
  35. 0 248
      packages/forms/demo/canvas.pp
  36. 0 87
      packages/forms/demo/chartall.pp
  37. 0 126
      packages/forms/demo/chartstrip.pp
  38. 0 57
      packages/forms/demo/choice.pp
  39. 0 286
      packages/forms/demo/colbrowser.pp
  40. 0 12
      packages/forms/demo/colsel.pp
  41. 0 52
      packages/forms/demo/colsel1.pp
  42. 0 77
      packages/forms/demo/counter.pp
  43. 0 38
      packages/forms/demo/crab.xpm
  44. 0 38
      packages/forms/demo/crab45.xpm
  45. 0 95
      packages/forms/demo/cursor.pp
  46. 0 11
      packages/forms/demo/doc2p
  47. 0 89
      packages/forms/demo/fbrowse.pp
  48. 0 59
      packages/forms/demo/fbrowse1.pp
  49. 0 77
      packages/forms/demo/fdial.pp
  50. 0 52
      packages/forms/demo/flclock.pp
  51. 0 112
      packages/forms/demo/fonts.pp
  52. 0 89
      packages/forms/demo/free1.pp
  53. 0 54
      packages/forms/demo/goodies.pp
  54. 0 231
      packages/forms/demo/group.pp
  55. 0 42
      packages/forms/demo/iconify.pp
  56. 0 103
      packages/forms/demo/inputall.pp
  57. 0 72
      packages/forms/demo/invslider.pp
  58. 0 108
      packages/forms/demo/lalign.pp
  59. 0 69
      packages/forms/demo/ldial.pp
  60. 0 146
      packages/forms/demo/ll.pp
  61. 0 63
      packages/forms/demo/longlabel.pp
  62. 0 126
      packages/forms/demo/menu.pp
  63. 0 34
      packages/forms/demo/minput.pp
  64. 0 57
      packages/forms/demo/multilabel.pp
  65. 0 68
      packages/forms/demo/ndial.pp
  66. 0 157
      packages/forms/demo/newbutton.pp
  67. 0 58
      packages/forms/demo/nomail.xbm
  68. 0 116
      packages/forms/demo/objinactive.pp
  69. 0 50
      packages/forms/demo/objpos.pp
  70. 0 127
      packages/forms/demo/objreturn.pp
  71. 0 72
      packages/forms/demo/porsche.xpm
  72. 0 61
      packages/forms/demo/positioner.pp
  73. 0 241
      packages/forms/demo/pup.pp
  74. 0 50
      packages/forms/demo/pushbutton.pp
  75. 0 22
      packages/forms/demo/pushme.pp
  76. 0 34
      packages/forms/demo/secretinput.pp
  77. 0 80
      packages/forms/demo/sliderall.pp
  78. 0 68
      packages/forms/demo/srs.xbm
  79. 0 59
      packages/forms/demo/touchbutton.pp
  80. 0 76
      packages/forms/demo/xyplotover.pp
  81. 0 30
      packages/forms/demo/yesno.pp
  82. 0 1136
      packages/forms/fd2pascal.pp
  83. 0 2928
      packages/forms/forms.pp
  84. 0 1312
      packages/gdbint/Makefile
  85. 0 109
      packages/gdbint/Makefile.fpc
  86. 0 267
      packages/gdbint/gdbcon.pp
  87. 0 2558
      packages/gdbint/gdbint.pp
  88. 0 189
      packages/gdbint/gdbobjs.inc
  89. 0 90
      packages/gdbint/gdbver.pp
  90. 0 977
      packages/gdbint/libgdb/Makefile
  91. 0 10
      packages/gdbint/libgdb/Makefile.fpc
  92. 0 142
      packages/gdbint/libgdb/go32v2/Makefile
  93. 0 142
      packages/gdbint/libgdb/linux/Makefile
  94. 0 142
      packages/gdbint/libgdb/netbsd/Makefile
  95. 0 142
      packages/gdbint/libgdb/win32/Makefile
  96. 0 84
      packages/gdbint/symify.pp
  97. 0 61
      packages/gdbint/testgdb.pp
  98. 0 1236
      packages/gdbm/Makefile
  99. 0 26
      packages/gdbm/Makefile.fpc
  100. 0 50
      packages/gdbm/README

+ 0 - 2285
packages/Makefile

@@ -1,2285 +0,0 @@
-#
-# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/27]
-#
-default: all
-MAKEFILETARGETS=linux go32v2 win32 os2 freebsd beos netbsd amiga atari sunos qnx
-override PATH:=$(subst \,/,$(PATH))
-ifeq ($(findstring ;,$(PATH)),)
-inUnix=1
-SEARCHPATH:=$(filter-out .,$(subst :, ,$(PATH)))
-else
-SEARCHPATH:=$(subst ;, ,$(PATH))
-endif
-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 cygwin,$(MACHTYPE)),)
-inCygWin=1
-endif
-endif
-ifeq ($(OS_TARGET),freebsd)
-BSDhier=1
-endif
-ifeq ($(OS_TARGET),netbsd)
-BSDhier=1
-endif
-ifdef inUnix
-BATCHEXT=.sh
-else
-ifdef inOS2
-BATCHEXT=.cmd
-else
-BATCHEXT=.bat
-endif
-endif
-ifdef inUnix
-PATHSEP=/
-else
-PATHSEP:=$(subst /,\,/)
-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
-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=ppc386
-endif
-else
-override FPC=ppc386
-endif
-endif
-override FPC:=$(subst $(SRCEXEEXT),,$(FPC))
-override FPC:=$(subst \,/,$(FPC))$(SRCEXEEXT)
-ifndef FPC_VERSION
-FPC_VERSION:=$(shell $(FPC) -iV)
-endif
-export FPC FPC_VERSION
-ifeq ($(findstring 1.0.,$(FPC_VERSION)),)
-COMPILERINFO:=$(shell $(FPC) -iSP -iTP -iSO -iTO)
-ifndef CPU_SOURCE
-CPU_SOURCE:=$(word 1,$(COMPILERINFO))
-endif
-ifndef CPU_TARGET
-CPU_TARGET:=$(word 2,$(COMPILERINFO))
-endif
-ifndef OS_SOURCE
-OS_SOURCE:=$(word 3,$(COMPILERINFO))
-endif
-ifndef OS_TARGET
-OS_TARGET:=$(word 4,$(COMPILERINFO))
-endif
-else
-ifndef CPU_SOURCE
-CPU_SOURCE:=$(shell $(FPC) -iSP)
-endif
-ifndef CPU_TARGET
-CPU_TARGET:=$(shell $(FPC) -iTP)
-endif
-ifndef OS_SOURCE
-OS_SOURCE:=$(shell $(FPC) -iSO)
-endif
-ifndef OS_TARGET
-OS_TARGET:=$(shell $(FPC) -iTO)
-endif
-endif
-FULL_TARGET=$(CPU_TARGET)-$(OS_TARGET)
-FULL_SOURCE=$(CPU_SOURCE)-$(OS_SOURCE)
-ifneq ($(FULL_TARGET),$(FULL_SOURCE))
-CROSSCOMPILE=1
-endif
-ifeq ($(findstring makefile,$(MAKECMDGOALS)),)
-ifeq ($(findstring $(OS_TARGET),$(MAKEFILETARGETS)),)
-$(error The Makefile doesn't support target $(OS_TARGET), please run fpcmake first)
-endif
-endif
-export OS_TARGET OS_SOURCE CPU_TARGET CPU_SOURCE FULL_TARGET FULL_SOURCE 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=c:/pp
-endif
-endif
-endif
-endif
-ifndef CROSSDIR
-CROSSDIR:=$(FPCDIR)/cross/$(FULL_TARGET)
-endif
-ifndef CROSSTARGETDIR
-CROSSTARGETDIR=$(CROSSDIR)/$(FULL_TARGET)
-endif
-ifdef CROSSCOMPILE
-UNITSDIR:=$(wildcard $(CROSSTARGETDIR)/units)
-ifeq ($(UNITSDIR),)
-UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
-endif
-else
-UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
-endif
-PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages)
-ifeq ($(OS_TARGET),linux)
-override TARGET_DIRS+=zlib ncurses x11 gtk syslog inet uncgi mysql ibase postgres oracle opengl forms svgalib ggi libpng libgd utmp paszlib gdbint cmem regexpr unzip
-endif
-ifeq ($(OS_TARGET),go32v2)
-override TARGET_DIRS+=uncgi gdbint paszlib unzip regexpr
-endif
-ifeq ($(OS_TARGET),win32)
-override TARGET_DIRS+=uncgi gtk gdbint ibase mysql zlib paszlib unzip regexpr opengl mmsystem
-endif
-ifeq ($(OS_TARGET),os2)
-override TARGET_DIRS+=uncgi paszlib unzip regexpr
-endif
-ifeq ($(OS_TARGET),freebsd)
-override TARGET_DIRS+=zlib ncurses x11 gtk syslog inet uncgi mysql ibase postgres oracle opengl forms svgalib ggi libpng libgd utmp paszlib gdbint cmem regexpr unzip asyncio bfd gdbm
-endif
-ifeq ($(OS_TARGET),beos)
-override TARGET_DIRS+=paszlib regexpr
-endif
-ifeq ($(OS_TARGET),netbsd)
-override TARGET_DIRS+=zlib ncurses x11 gtk syslog inet uncgi mysql ibase postgres oracle opengl forms svgalib ggi libpng libgd utmp paszlib gdbint cmem regexpr unzip asyncio bfd gdbm
-endif
-ifeq ($(OS_TARGET),sunos)
-override TARGET_DIRS+=paszlib regexpr
-endif
-ifeq ($(OS_TARGET),qnx)
-override TARGET_DIRS+=paszlib regexpr
-endif
-override INSTALL_FPCPACKAGE=y
-ifdef REQUIRE_UNITSDIR
-override UNITSDIR+=$(REQUIRE_UNITSDIR)
-endif
-ifdef REQUIRE_PACKAGESDIR
-override PACKAGESDIR+=$(REQUIRE_PACKAGESDIR)
-endif
-ifdef ZIPINSTALL
-ifeq ($(OS_TARGET),linux)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_TARGET),freebsd)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_TARGET),netbsd)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_TARGET),sunos)
-UNIXINSTALLDIR=1
-endif
-else
-ifeq ($(OS_SOURCE),linux)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_SOURCE),freebsd)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_SOURCE),netbsd)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_TARGET),sunos)
-UNIXINSTALLDIR=1
-endif
-endif
-ifndef INSTALL_PREFIX
-ifdef PREFIX
-INSTALL_PREFIX=$(PREFIX)
-endif
-endif
-ifndef INSTALL_PREFIX
-ifdef UNIXINSTALLDIR
-INSTALL_PREFIX=/usr/local
-else
-ifdef INSTALL_FPCPACKAGE
-INSTALL_BASEDIR:=/pp
-else
-INSTALL_BASEDIR:=/$(PACKAGE_NAME)
-endif
-endif
-endif
-export INSTALL_PREFIX
-ifndef DIST_DESTDIR
-DIST_DESTDIR:=$(BASEDIR)
-endif
-export DIST_DESTDIR
-ifndef INSTALL_BASEDIR
-ifdef UNIXINSTALLDIR
-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 UNIXINSTALLDIR
-INSTALL_BINDIR:=$(INSTALL_PREFIX)/bin
-else
-INSTALL_BINDIR:=$(INSTALL_BASEDIR)/bin
-ifdef INSTALL_FPCPACKAGE
-INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(OS_TARGET)
-endif
-endif
-endif
-ifndef INSTALL_UNITDIR
-ifdef CROSSCOMPILE
-INSTALL_UNITDIR:=$(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/units
-else
-INSTALL_UNITDIR:=$(INSTALL_BASEDIR)/units/$(OS_TARGET)
-endif
-ifdef INSTALL_FPCPACKAGE
-ifdef PACKAGE_NAME
-INSTALL_UNITDIR:=$(INSTALL_UNITDIR)/$(PACKAGE_NAME)
-endif
-endif
-endif
-ifndef INSTALL_LIBDIR
-ifdef UNIXINSTALLDIR
-INSTALL_LIBDIR:=$(INSTALL_PREFIX)/lib
-else
-INSTALL_LIBDIR:=$(INSTALL_UNITDIR)
-endif
-endif
-ifndef INSTALL_SOURCEDIR
-ifdef UNIXINSTALLDIR
-ifdef INSTALL_FPCPACKAGE
-ifdef BSDhier
-INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/share/src/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-else
-INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/src/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-endif
-else
-ifdef BSDhier
-INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/share/src/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-else
-INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/src/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-endif
-endif
-else
-ifdef INSTALL_FPCPACKAGE
-INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source/$(PACKAGE_NAME)
-else
-INSTALL_SOURCEDIRL:=$(INSTALL_BASEDIR)/source
-endif
-endif
-endif
-ifndef INSTALL_DOCDIR
-ifdef UNIXINSTALLDIR
-ifdef INSTALL_FPCPACKAGE
-ifdef BSDhier
-INSTALL_DOCDIR:=$(INSTALL_PREFIX)/share/doc/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-else
-INSTALL_DOCDIR:=$(INSTALL_PREFIX)/doc/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-endif
-else
-ifdef BSDhier
-INSTALL_DOCDIR:=$(INSTALL_PREFIX)/share/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-else
-INSTALL_DOCDIR:=$(INSTALL_PREFIX)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-endif
-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 UNIXINSTALLDIR
-ifdef INSTALL_FPCPACKAGE
-ifdef BSDhier
-INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-else
-INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/fpc-$(FPC_VERSION)/examples/$(PACKAGE_NAME)
-endif
-else
-ifdef BSDhier
-INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-else
-INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-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
-ifdef CROSSCOMPILE
-ifndef CROSSBINDIR
-CROSSBINDIR:=$(wildcard $(CROSSTARGETDIR)/bin/$(FULL_SOURCE))
-ifeq ($(CROSSBINDIR),)
-CROSSBINDIR:=$(wildcard $(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/bin/$(FULL_SOURCE))
-endif
-endif
-else
-CROSSBINDIR=
-endif
-LOADEREXT=.as
-EXEEXT=.exe
-PPLEXT=.ppl
-PPUEXT=.ppu
-OEXT=.o
-ASMEXT=.s
-SMARTEXT=.sl
-STATICLIBEXT=.a
-SHAREDLIBEXT=.so
-STATICLIBPREFIX=libp
-RSTEXT=.rst
-FPCMADE=fpcmade
-ifeq ($(OS_TARGET),go32v1)
-PPUEXT=.pp1
-OEXT=.o1
-ASMEXT=.s1
-SMARTEXT=.sl1
-STATICLIBEXT=.a1
-SHAREDLIBEXT=.so1
-STATICLIBPREFIX=
-FPCMADE=fpcmade.v1
-PACKAGESUFFIX=v1
-endif
-ifeq ($(OS_TARGET),go32v2)
-STATICLIBPREFIX=
-FPCMADE=fpcmade.dos
-ZIPSUFFIX=go32
-endif
-ifeq ($(OS_TARGET),linux)
-EXEEXT=
-HASSHAREDLIB=1
-FPCMADE=fpcmade.lnx
-ZIPSUFFIX=linux
-endif
-ifeq ($(OS_TARGET),freebsd)
-EXEEXT=
-HASSHAREDLIB=1
-FPCMADE=fpcmade.freebsd
-ZIPSUFFIX=freebsd
-endif
-ifeq ($(OS_TARGET),netbsd)
-EXEEXT=
-HASSHAREDLIB=1
-FPCMADE=fpcmade.netbsd
-ZIPSUFFIX=netbsd
-endif
-ifeq ($(OS_TARGET),win32)
-PPUEXT=.ppw
-OEXT=.ow
-ASMEXT=.sw
-SMARTEXT=.slw
-STATICLIBEXT=.aw
-SHAREDLIBEXT=.dll
-FPCMADE=fpcmade.w32
-ZIPSUFFIX=w32
-endif
-ifeq ($(OS_TARGET),os2)
-PPUEXT=.ppo
-ASMEXT=.so2
-OEXT=.oo2
-AOUTEXT=.out
-SMARTEXT=.so
-STATICLIBEXT=.ao2
-SHAREDLIBEXT=.dll
-FPCMADE=fpcmade.os2
-ZIPSUFFIX=emx
-endif
-ifeq ($(OS_TARGET),amiga)
-EXEEXT=
-PPUEXT=.ppa
-ASMEXT=.asm
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-SHAREDLIBEXT=.library
-FPCMADE=fpcmade.amg
-endif
-ifeq ($(OS_TARGET),atari)
-PPUEXT=.ppt
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=.ttp
-FPCMADE=fpcmade.ata
-endif
-ifeq ($(OS_TARGET),beos)
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=
-FPCMADE=fpcmade.be
-ZIPSUFFIX=be
-endif
-ifeq ($(OS_TARGET),sunos)
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=
-FPCMADE=fpcmade.sun
-ZIPSUFFIX=sun
-endif
-ifeq ($(OS_TARGET),qnx)
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=
-FPCMADE=fpcmade.qnx
-ZIPSUFFIX=qnx
-endif
-ifndef ECHO
-ECHO:=$(strip $(wildcard $(addsuffix /gecho$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(ECHO),)
-ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(ECHO),)
-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=
-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=
-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=
-else
-CPPROG:=$(firstword $(CPPROG))
-endif
-endif
-export CPPROG
-ifndef RMPROG
-RMPROG:=$(strip $(wildcard $(addsuffix /rm$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(RMPROG),)
-RMPROG=
-else
-RMPROG:=$(firstword $(RMPROG))
-endif
-endif
-export RMPROG
-ifndef MVPROG
-MVPROG:=$(strip $(wildcard $(addsuffix /mv$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(MVPROG),)
-MVPROG=
-else
-MVPROG:=$(firstword $(MVPROG))
-endif
-endif
-export MVPROG
-ifndef ECHOREDIR
-ECHOREDIR:=$(subst /,$(PATHSEP),$(ECHO))
-endif
-ifndef COPY
-COPY:=$(CPPROG) -fp
-endif
-ifndef COPYTREE
-COPYTREE:=$(CPPROG) -rfp
-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=
-else
-PPUMOVE:=$(firstword $(PPUMOVE))
-endif
-endif
-export PPUMOVE
-ifndef FPCMAKE
-FPCMAKE:=$(strip $(wildcard $(addsuffix /fpcmake$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(FPCMAKE),)
-FPCMAKE=
-else
-FPCMAKE:=$(firstword $(FPCMAKE))
-endif
-endif
-export FPCMAKE
-ifndef ZIPPROG
-ZIPPROG:=$(strip $(wildcard $(addsuffix /zip$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(ZIPPROG),)
-ZIPPROG=
-else
-ZIPPROG:=$(firstword $(ZIPPROG))
-endif
-endif
-export ZIPPROG
-ifndef TARPROG
-TARPROG:=$(strip $(wildcard $(addsuffix /tar$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(TARPROG),)
-TARPROG=
-else
-TARPROG:=$(firstword $(TARPROG))
-endif
-endif
-export TARPROG
-ASNAME=as
-LDNAME=ld
-ARNAME=ar
-RCNAME=rc
-ifeq ($(OS_TARGET),win32)
-ASNAME=asw
-LDNAME=ldw
-ARNAME=arw
-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$(BATCHEXT)
-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=vI
-TAREXT=.tar.bz2
-else
-TAROPT=vz
-TAREXT=.tar.gz
-endif
-ifndef NOCPUDEF
-override FPCOPTDEF=$(CPU_TARGET)
-endif
-ifneq ($(OS_TARGET),$(OS_SOURCE))
-override FPCOPT+=-T$(OS_TARGET)
-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
-ifeq ($(CPU_TARGET),i386)
-FPCCPUOPT:=-OG2p3
-else
-FPCCPUOPT:=
-endif
-override FPCOPT+=-Xs $(FPCCPUOPT) -n
-override FPCOPTDEF+=RELEASE
-endif
-ifdef STRIP
-override FPCOPT+=-Xs
-endif
-ifdef OPTIMIZE
-ifeq ($(CPU_TARGET),i386)
-override FPCOPT+=-OG2p3
-endif
-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 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 COMPILER:=$(FPC) $(FPCOPT)
-ifeq (,$(findstring -s ,$(COMPILER)))
-EXECPPAS=
-else
-ifeq ($(OS_SOURCE),$(OS_TARGET))
-EXECPPAS:=@$(PPAS)
-endif
-endif
-ifdef TARGET_RSTS
-override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS))
-override CLEANRSTFILES+=$(RSTFILES)
-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)))
-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)
-fpc_distclean: clean
-ifdef COMPILER_UNITTARGETDIR
-TARGETDIRCLEAN=fpc_clean
-endif
-fpc_cleanall: $(CLEANTARGET) $(TARGETDIRCLEAN)
-ifdef CLEANEXEFILES
-	-$(DEL) $(CLEANEXEFILES)
-endif
-	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
-	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
-ifdef AOUTEXT
-	-$(DEL) *$(AOUTEXT)
-endif
-.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 Target.. $(FULL_SOURCE)
-	@$(ECHO)  Full Source.. $(FULL_TARGET)
-	@$(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)  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)  ZipPrefix............ $(ZIPPREFIX)
-	@$(ECHO)  ZipSuffix............ $(ZIPSUFFIX)
-	@$(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 ($(OS_TARGET),linux)
-TARGET_DIRS_ZLIB=1
-TARGET_DIRS_NCURSES=1
-TARGET_DIRS_X11=1
-TARGET_DIRS_GTK=1
-TARGET_DIRS_SYSLOG=1
-TARGET_DIRS_INET=1
-TARGET_DIRS_UNCGI=1
-TARGET_DIRS_MYSQL=1
-TARGET_DIRS_IBASE=1
-TARGET_DIRS_POSTGRES=1
-TARGET_DIRS_ORACLE=1
-TARGET_DIRS_OPENGL=1
-TARGET_DIRS_FORMS=1
-TARGET_DIRS_SVGALIB=1
-TARGET_DIRS_GGI=1
-TARGET_DIRS_LIBPNG=1
-TARGET_DIRS_LIBGD=1
-TARGET_DIRS_UTMP=1
-TARGET_DIRS_PASZLIB=1
-TARGET_DIRS_GDBINT=1
-TARGET_DIRS_CMEM=1
-TARGET_DIRS_REGEXPR=1
-TARGET_DIRS_UNZIP=1
-endif
-ifeq ($(OS_TARGET),go32v2)
-TARGET_DIRS_UNCGI=1
-TARGET_DIRS_GDBINT=1
-TARGET_DIRS_PASZLIB=1
-TARGET_DIRS_UNZIP=1
-TARGET_DIRS_REGEXPR=1
-endif
-ifeq ($(OS_TARGET),win32)
-TARGET_DIRS_UNCGI=1
-TARGET_DIRS_GTK=1
-TARGET_DIRS_GDBINT=1
-TARGET_DIRS_IBASE=1
-TARGET_DIRS_MYSQL=1
-TARGET_DIRS_ZLIB=1
-TARGET_DIRS_PASZLIB=1
-TARGET_DIRS_UNZIP=1
-TARGET_DIRS_REGEXPR=1
-TARGET_DIRS_OPENGL=1
-TARGET_DIRS_MMSYSTEM=1
-endif
-ifeq ($(OS_TARGET),os2)
-TARGET_DIRS_UNCGI=1
-TARGET_DIRS_PASZLIB=1
-TARGET_DIRS_UNZIP=1
-TARGET_DIRS_REGEXPR=1
-endif
-ifeq ($(OS_TARGET),freebsd)
-TARGET_DIRS_ZLIB=1
-TARGET_DIRS_NCURSES=1
-TARGET_DIRS_X11=1
-TARGET_DIRS_GTK=1
-TARGET_DIRS_SYSLOG=1
-TARGET_DIRS_INET=1
-TARGET_DIRS_UNCGI=1
-TARGET_DIRS_MYSQL=1
-TARGET_DIRS_IBASE=1
-TARGET_DIRS_POSTGRES=1
-TARGET_DIRS_ORACLE=1
-TARGET_DIRS_OPENGL=1
-TARGET_DIRS_FORMS=1
-TARGET_DIRS_SVGALIB=1
-TARGET_DIRS_GGI=1
-TARGET_DIRS_LIBPNG=1
-TARGET_DIRS_LIBGD=1
-TARGET_DIRS_UTMP=1
-TARGET_DIRS_PASZLIB=1
-TARGET_DIRS_GDBINT=1
-TARGET_DIRS_CMEM=1
-TARGET_DIRS_REGEXPR=1
-TARGET_DIRS_UNZIP=1
-TARGET_DIRS_ASYNCIO=1
-TARGET_DIRS_BFD=1
-TARGET_DIRS_GDBM=1
-endif
-ifeq ($(OS_TARGET),beos)
-TARGET_DIRS_PASZLIB=1
-TARGET_DIRS_REGEXPR=1
-endif
-ifeq ($(OS_TARGET),netbsd)
-TARGET_DIRS_ZLIB=1
-TARGET_DIRS_NCURSES=1
-TARGET_DIRS_X11=1
-TARGET_DIRS_GTK=1
-TARGET_DIRS_SYSLOG=1
-TARGET_DIRS_INET=1
-TARGET_DIRS_UNCGI=1
-TARGET_DIRS_MYSQL=1
-TARGET_DIRS_IBASE=1
-TARGET_DIRS_POSTGRES=1
-TARGET_DIRS_ORACLE=1
-TARGET_DIRS_OPENGL=1
-TARGET_DIRS_FORMS=1
-TARGET_DIRS_SVGALIB=1
-TARGET_DIRS_GGI=1
-TARGET_DIRS_LIBPNG=1
-TARGET_DIRS_LIBGD=1
-TARGET_DIRS_UTMP=1
-TARGET_DIRS_PASZLIB=1
-TARGET_DIRS_GDBINT=1
-TARGET_DIRS_CMEM=1
-TARGET_DIRS_REGEXPR=1
-TARGET_DIRS_UNZIP=1
-TARGET_DIRS_ASYNCIO=1
-TARGET_DIRS_BFD=1
-TARGET_DIRS_GDBM=1
-endif
-ifeq ($(OS_TARGET),sunos)
-TARGET_DIRS_PASZLIB=1
-TARGET_DIRS_REGEXPR=1
-endif
-ifeq ($(OS_TARGET),qnx)
-TARGET_DIRS_PASZLIB=1
-TARGET_DIRS_REGEXPR=1
-endif
-ifdef TARGET_DIRS_ZLIB
-zlib_all:
-	$(MAKE) -C zlib all
-zlib_debug:
-	$(MAKE) -C zlib debug
-zlib_smart:
-	$(MAKE) -C zlib smart
-zlib_release:
-	$(MAKE) -C zlib release
-zlib_examples:
-	$(MAKE) -C zlib examples
-zlib_shared:
-	$(MAKE) -C zlib shared
-zlib_install:
-	$(MAKE) -C zlib install
-zlib_sourceinstall:
-	$(MAKE) -C zlib sourceinstall
-zlib_exampleinstall:
-	$(MAKE) -C zlib exampleinstall
-zlib_distinstall:
-	$(MAKE) -C zlib distinstall
-zlib_zipinstall:
-	$(MAKE) -C zlib zipinstall
-zlib_zipsourceinstall:
-	$(MAKE) -C zlib zipsourceinstall
-zlib_zipexampleinstall:
-	$(MAKE) -C zlib zipexampleinstall
-zlib_zipdistinstall:
-	$(MAKE) -C zlib zipdistinstall
-zlib_clean:
-	$(MAKE) -C zlib clean
-zlib_distclean:
-	$(MAKE) -C zlib distclean
-zlib_cleanall:
-	$(MAKE) -C zlib cleanall
-zlib_info:
-	$(MAKE) -C zlib info
-zlib_makefiles:
-	$(MAKE) -C zlib makefiles
-zlib:
-	$(MAKE) -C zlib all
-.PHONY: zlib_all zlib_debug zlib_smart zlib_release zlib_examples zlib_shared zlib_install zlib_sourceinstall zlib_exampleinstall zlib_distinstall zlib_zipinstall zlib_zipsourceinstall zlib_zipexampleinstall zlib_zipdistinstall zlib_clean zlib_distclean zlib_cleanall zlib_info zlib_makefiles zlib
-endif
-ifdef TARGET_DIRS_NCURSES
-ncurses_all:
-	$(MAKE) -C ncurses all
-ncurses_debug:
-	$(MAKE) -C ncurses debug
-ncurses_smart:
-	$(MAKE) -C ncurses smart
-ncurses_release:
-	$(MAKE) -C ncurses release
-ncurses_examples:
-	$(MAKE) -C ncurses examples
-ncurses_shared:
-	$(MAKE) -C ncurses shared
-ncurses_install:
-	$(MAKE) -C ncurses install
-ncurses_sourceinstall:
-	$(MAKE) -C ncurses sourceinstall
-ncurses_exampleinstall:
-	$(MAKE) -C ncurses exampleinstall
-ncurses_distinstall:
-	$(MAKE) -C ncurses distinstall
-ncurses_zipinstall:
-	$(MAKE) -C ncurses zipinstall
-ncurses_zipsourceinstall:
-	$(MAKE) -C ncurses zipsourceinstall
-ncurses_zipexampleinstall:
-	$(MAKE) -C ncurses zipexampleinstall
-ncurses_zipdistinstall:
-	$(MAKE) -C ncurses zipdistinstall
-ncurses_clean:
-	$(MAKE) -C ncurses clean
-ncurses_distclean:
-	$(MAKE) -C ncurses distclean
-ncurses_cleanall:
-	$(MAKE) -C ncurses cleanall
-ncurses_info:
-	$(MAKE) -C ncurses info
-ncurses_makefiles:
-	$(MAKE) -C ncurses makefiles
-ncurses:
-	$(MAKE) -C ncurses all
-.PHONY: ncurses_all ncurses_debug ncurses_smart ncurses_release ncurses_examples ncurses_shared ncurses_install ncurses_sourceinstall ncurses_exampleinstall ncurses_distinstall ncurses_zipinstall ncurses_zipsourceinstall ncurses_zipexampleinstall ncurses_zipdistinstall ncurses_clean ncurses_distclean ncurses_cleanall ncurses_info ncurses_makefiles ncurses
-endif
-ifdef TARGET_DIRS_X11
-x11_all:
-	$(MAKE) -C x11 all
-x11_debug:
-	$(MAKE) -C x11 debug
-x11_smart:
-	$(MAKE) -C x11 smart
-x11_release:
-	$(MAKE) -C x11 release
-x11_examples:
-	$(MAKE) -C x11 examples
-x11_shared:
-	$(MAKE) -C x11 shared
-x11_install:
-	$(MAKE) -C x11 install
-x11_sourceinstall:
-	$(MAKE) -C x11 sourceinstall
-x11_exampleinstall:
-	$(MAKE) -C x11 exampleinstall
-x11_distinstall:
-	$(MAKE) -C x11 distinstall
-x11_zipinstall:
-	$(MAKE) -C x11 zipinstall
-x11_zipsourceinstall:
-	$(MAKE) -C x11 zipsourceinstall
-x11_zipexampleinstall:
-	$(MAKE) -C x11 zipexampleinstall
-x11_zipdistinstall:
-	$(MAKE) -C x11 zipdistinstall
-x11_clean:
-	$(MAKE) -C x11 clean
-x11_distclean:
-	$(MAKE) -C x11 distclean
-x11_cleanall:
-	$(MAKE) -C x11 cleanall
-x11_info:
-	$(MAKE) -C x11 info
-x11_makefiles:
-	$(MAKE) -C x11 makefiles
-x11:
-	$(MAKE) -C x11 all
-.PHONY: x11_all x11_debug x11_smart x11_release x11_examples x11_shared x11_install x11_sourceinstall x11_exampleinstall x11_distinstall x11_zipinstall x11_zipsourceinstall x11_zipexampleinstall x11_zipdistinstall x11_clean x11_distclean x11_cleanall x11_info x11_makefiles x11
-endif
-ifdef TARGET_DIRS_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_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_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
-ifdef TARGET_DIRS_SYSLOG
-syslog_all:
-	$(MAKE) -C syslog all
-syslog_debug:
-	$(MAKE) -C syslog debug
-syslog_smart:
-	$(MAKE) -C syslog smart
-syslog_release:
-	$(MAKE) -C syslog release
-syslog_examples:
-	$(MAKE) -C syslog examples
-syslog_shared:
-	$(MAKE) -C syslog shared
-syslog_install:
-	$(MAKE) -C syslog install
-syslog_sourceinstall:
-	$(MAKE) -C syslog sourceinstall
-syslog_exampleinstall:
-	$(MAKE) -C syslog exampleinstall
-syslog_distinstall:
-	$(MAKE) -C syslog distinstall
-syslog_zipinstall:
-	$(MAKE) -C syslog zipinstall
-syslog_zipsourceinstall:
-	$(MAKE) -C syslog zipsourceinstall
-syslog_zipexampleinstall:
-	$(MAKE) -C syslog zipexampleinstall
-syslog_zipdistinstall:
-	$(MAKE) -C syslog zipdistinstall
-syslog_clean:
-	$(MAKE) -C syslog clean
-syslog_distclean:
-	$(MAKE) -C syslog distclean
-syslog_cleanall:
-	$(MAKE) -C syslog cleanall
-syslog_info:
-	$(MAKE) -C syslog info
-syslog_makefiles:
-	$(MAKE) -C syslog makefiles
-syslog:
-	$(MAKE) -C syslog all
-.PHONY: syslog_all syslog_debug syslog_smart syslog_release syslog_examples syslog_shared syslog_install syslog_sourceinstall syslog_exampleinstall syslog_distinstall syslog_zipinstall syslog_zipsourceinstall syslog_zipexampleinstall syslog_zipdistinstall syslog_clean syslog_distclean syslog_cleanall syslog_info syslog_makefiles syslog
-endif
-ifdef TARGET_DIRS_INET
-inet_all:
-	$(MAKE) -C inet all
-inet_debug:
-	$(MAKE) -C inet debug
-inet_smart:
-	$(MAKE) -C inet smart
-inet_release:
-	$(MAKE) -C inet release
-inet_examples:
-	$(MAKE) -C inet examples
-inet_shared:
-	$(MAKE) -C inet shared
-inet_install:
-	$(MAKE) -C inet install
-inet_sourceinstall:
-	$(MAKE) -C inet sourceinstall
-inet_exampleinstall:
-	$(MAKE) -C inet exampleinstall
-inet_distinstall:
-	$(MAKE) -C inet distinstall
-inet_zipinstall:
-	$(MAKE) -C inet zipinstall
-inet_zipsourceinstall:
-	$(MAKE) -C inet zipsourceinstall
-inet_zipexampleinstall:
-	$(MAKE) -C inet zipexampleinstall
-inet_zipdistinstall:
-	$(MAKE) -C inet zipdistinstall
-inet_clean:
-	$(MAKE) -C inet clean
-inet_distclean:
-	$(MAKE) -C inet distclean
-inet_cleanall:
-	$(MAKE) -C inet cleanall
-inet_info:
-	$(MAKE) -C inet info
-inet_makefiles:
-	$(MAKE) -C inet makefiles
-inet:
-	$(MAKE) -C inet all
-.PHONY: inet_all inet_debug inet_smart inet_release inet_examples inet_shared inet_install inet_sourceinstall inet_exampleinstall inet_distinstall inet_zipinstall inet_zipsourceinstall inet_zipexampleinstall inet_zipdistinstall inet_clean inet_distclean inet_cleanall inet_info inet_makefiles inet
-endif
-ifdef TARGET_DIRS_UNCGI
-uncgi_all:
-	$(MAKE) -C uncgi all
-uncgi_debug:
-	$(MAKE) -C uncgi debug
-uncgi_smart:
-	$(MAKE) -C uncgi smart
-uncgi_release:
-	$(MAKE) -C uncgi release
-uncgi_examples:
-	$(MAKE) -C uncgi examples
-uncgi_shared:
-	$(MAKE) -C uncgi shared
-uncgi_install:
-	$(MAKE) -C uncgi install
-uncgi_sourceinstall:
-	$(MAKE) -C uncgi sourceinstall
-uncgi_exampleinstall:
-	$(MAKE) -C uncgi exampleinstall
-uncgi_distinstall:
-	$(MAKE) -C uncgi distinstall
-uncgi_zipinstall:
-	$(MAKE) -C uncgi zipinstall
-uncgi_zipsourceinstall:
-	$(MAKE) -C uncgi zipsourceinstall
-uncgi_zipexampleinstall:
-	$(MAKE) -C uncgi zipexampleinstall
-uncgi_zipdistinstall:
-	$(MAKE) -C uncgi zipdistinstall
-uncgi_clean:
-	$(MAKE) -C uncgi clean
-uncgi_distclean:
-	$(MAKE) -C uncgi distclean
-uncgi_cleanall:
-	$(MAKE) -C uncgi cleanall
-uncgi_info:
-	$(MAKE) -C uncgi info
-uncgi_makefiles:
-	$(MAKE) -C uncgi makefiles
-uncgi:
-	$(MAKE) -C uncgi all
-.PHONY: uncgi_all uncgi_debug uncgi_smart uncgi_release uncgi_examples uncgi_shared uncgi_install uncgi_sourceinstall uncgi_exampleinstall uncgi_distinstall uncgi_zipinstall uncgi_zipsourceinstall uncgi_zipexampleinstall uncgi_zipdistinstall uncgi_clean uncgi_distclean uncgi_cleanall uncgi_info uncgi_makefiles uncgi
-endif
-ifdef TARGET_DIRS_MYSQL
-mysql_all:
-	$(MAKE) -C mysql all
-mysql_debug:
-	$(MAKE) -C mysql debug
-mysql_smart:
-	$(MAKE) -C mysql smart
-mysql_release:
-	$(MAKE) -C mysql release
-mysql_examples:
-	$(MAKE) -C mysql examples
-mysql_shared:
-	$(MAKE) -C mysql shared
-mysql_install:
-	$(MAKE) -C mysql install
-mysql_sourceinstall:
-	$(MAKE) -C mysql sourceinstall
-mysql_exampleinstall:
-	$(MAKE) -C mysql exampleinstall
-mysql_distinstall:
-	$(MAKE) -C mysql distinstall
-mysql_zipinstall:
-	$(MAKE) -C mysql zipinstall
-mysql_zipsourceinstall:
-	$(MAKE) -C mysql zipsourceinstall
-mysql_zipexampleinstall:
-	$(MAKE) -C mysql zipexampleinstall
-mysql_zipdistinstall:
-	$(MAKE) -C mysql zipdistinstall
-mysql_clean:
-	$(MAKE) -C mysql clean
-mysql_distclean:
-	$(MAKE) -C mysql distclean
-mysql_cleanall:
-	$(MAKE) -C mysql cleanall
-mysql_info:
-	$(MAKE) -C mysql info
-mysql_makefiles:
-	$(MAKE) -C mysql makefiles
-mysql:
-	$(MAKE) -C mysql all
-.PHONY: mysql_all mysql_debug mysql_smart mysql_release mysql_examples mysql_shared mysql_install mysql_sourceinstall mysql_exampleinstall mysql_distinstall mysql_zipinstall mysql_zipsourceinstall mysql_zipexampleinstall mysql_zipdistinstall mysql_clean mysql_distclean mysql_cleanall mysql_info mysql_makefiles mysql
-endif
-ifdef TARGET_DIRS_IBASE
-ibase_all:
-	$(MAKE) -C ibase all
-ibase_debug:
-	$(MAKE) -C ibase debug
-ibase_smart:
-	$(MAKE) -C ibase smart
-ibase_release:
-	$(MAKE) -C ibase release
-ibase_examples:
-	$(MAKE) -C ibase examples
-ibase_shared:
-	$(MAKE) -C ibase shared
-ibase_install:
-	$(MAKE) -C ibase install
-ibase_sourceinstall:
-	$(MAKE) -C ibase sourceinstall
-ibase_exampleinstall:
-	$(MAKE) -C ibase exampleinstall
-ibase_distinstall:
-	$(MAKE) -C ibase distinstall
-ibase_zipinstall:
-	$(MAKE) -C ibase zipinstall
-ibase_zipsourceinstall:
-	$(MAKE) -C ibase zipsourceinstall
-ibase_zipexampleinstall:
-	$(MAKE) -C ibase zipexampleinstall
-ibase_zipdistinstall:
-	$(MAKE) -C ibase zipdistinstall
-ibase_clean:
-	$(MAKE) -C ibase clean
-ibase_distclean:
-	$(MAKE) -C ibase distclean
-ibase_cleanall:
-	$(MAKE) -C ibase cleanall
-ibase_info:
-	$(MAKE) -C ibase info
-ibase_makefiles:
-	$(MAKE) -C ibase makefiles
-ibase:
-	$(MAKE) -C ibase all
-.PHONY: ibase_all ibase_debug ibase_smart ibase_release ibase_examples ibase_shared ibase_install ibase_sourceinstall ibase_exampleinstall ibase_distinstall ibase_zipinstall ibase_zipsourceinstall ibase_zipexampleinstall ibase_zipdistinstall ibase_clean ibase_distclean ibase_cleanall ibase_info ibase_makefiles ibase
-endif
-ifdef TARGET_DIRS_POSTGRES
-postgres_all:
-	$(MAKE) -C postgres all
-postgres_debug:
-	$(MAKE) -C postgres debug
-postgres_smart:
-	$(MAKE) -C postgres smart
-postgres_release:
-	$(MAKE) -C postgres release
-postgres_examples:
-	$(MAKE) -C postgres examples
-postgres_shared:
-	$(MAKE) -C postgres shared
-postgres_install:
-	$(MAKE) -C postgres install
-postgres_sourceinstall:
-	$(MAKE) -C postgres sourceinstall
-postgres_exampleinstall:
-	$(MAKE) -C postgres exampleinstall
-postgres_distinstall:
-	$(MAKE) -C postgres distinstall
-postgres_zipinstall:
-	$(MAKE) -C postgres zipinstall
-postgres_zipsourceinstall:
-	$(MAKE) -C postgres zipsourceinstall
-postgres_zipexampleinstall:
-	$(MAKE) -C postgres zipexampleinstall
-postgres_zipdistinstall:
-	$(MAKE) -C postgres zipdistinstall
-postgres_clean:
-	$(MAKE) -C postgres clean
-postgres_distclean:
-	$(MAKE) -C postgres distclean
-postgres_cleanall:
-	$(MAKE) -C postgres cleanall
-postgres_info:
-	$(MAKE) -C postgres info
-postgres_makefiles:
-	$(MAKE) -C postgres makefiles
-postgres:
-	$(MAKE) -C postgres all
-.PHONY: postgres_all postgres_debug postgres_smart postgres_release postgres_examples postgres_shared postgres_install postgres_sourceinstall postgres_exampleinstall postgres_distinstall postgres_zipinstall postgres_zipsourceinstall postgres_zipexampleinstall postgres_zipdistinstall postgres_clean postgres_distclean postgres_cleanall postgres_info postgres_makefiles postgres
-endif
-ifdef TARGET_DIRS_ORACLE
-oracle_all:
-	$(MAKE) -C oracle all
-oracle_debug:
-	$(MAKE) -C oracle debug
-oracle_smart:
-	$(MAKE) -C oracle smart
-oracle_release:
-	$(MAKE) -C oracle release
-oracle_examples:
-	$(MAKE) -C oracle examples
-oracle_shared:
-	$(MAKE) -C oracle shared
-oracle_install:
-	$(MAKE) -C oracle install
-oracle_sourceinstall:
-	$(MAKE) -C oracle sourceinstall
-oracle_exampleinstall:
-	$(MAKE) -C oracle exampleinstall
-oracle_distinstall:
-	$(MAKE) -C oracle distinstall
-oracle_zipinstall:
-	$(MAKE) -C oracle zipinstall
-oracle_zipsourceinstall:
-	$(MAKE) -C oracle zipsourceinstall
-oracle_zipexampleinstall:
-	$(MAKE) -C oracle zipexampleinstall
-oracle_zipdistinstall:
-	$(MAKE) -C oracle zipdistinstall
-oracle_clean:
-	$(MAKE) -C oracle clean
-oracle_distclean:
-	$(MAKE) -C oracle distclean
-oracle_cleanall:
-	$(MAKE) -C oracle cleanall
-oracle_info:
-	$(MAKE) -C oracle info
-oracle_makefiles:
-	$(MAKE) -C oracle makefiles
-oracle:
-	$(MAKE) -C oracle all
-.PHONY: oracle_all oracle_debug oracle_smart oracle_release oracle_examples oracle_shared oracle_install oracle_sourceinstall oracle_exampleinstall oracle_distinstall oracle_zipinstall oracle_zipsourceinstall oracle_zipexampleinstall oracle_zipdistinstall oracle_clean oracle_distclean oracle_cleanall oracle_info oracle_makefiles oracle
-endif
-ifdef TARGET_DIRS_OPENGL
-opengl_all:
-	$(MAKE) -C opengl all
-opengl_debug:
-	$(MAKE) -C opengl debug
-opengl_smart:
-	$(MAKE) -C opengl smart
-opengl_release:
-	$(MAKE) -C opengl release
-opengl_examples:
-	$(MAKE) -C opengl examples
-opengl_shared:
-	$(MAKE) -C opengl shared
-opengl_install:
-	$(MAKE) -C opengl install
-opengl_sourceinstall:
-	$(MAKE) -C opengl sourceinstall
-opengl_exampleinstall:
-	$(MAKE) -C opengl exampleinstall
-opengl_distinstall:
-	$(MAKE) -C opengl distinstall
-opengl_zipinstall:
-	$(MAKE) -C opengl zipinstall
-opengl_zipsourceinstall:
-	$(MAKE) -C opengl zipsourceinstall
-opengl_zipexampleinstall:
-	$(MAKE) -C opengl zipexampleinstall
-opengl_zipdistinstall:
-	$(MAKE) -C opengl zipdistinstall
-opengl_clean:
-	$(MAKE) -C opengl clean
-opengl_distclean:
-	$(MAKE) -C opengl distclean
-opengl_cleanall:
-	$(MAKE) -C opengl cleanall
-opengl_info:
-	$(MAKE) -C opengl info
-opengl_makefiles:
-	$(MAKE) -C opengl makefiles
-opengl:
-	$(MAKE) -C opengl all
-.PHONY: opengl_all opengl_debug opengl_smart opengl_release opengl_examples opengl_shared opengl_install opengl_sourceinstall opengl_exampleinstall opengl_distinstall opengl_zipinstall opengl_zipsourceinstall opengl_zipexampleinstall opengl_zipdistinstall opengl_clean opengl_distclean opengl_cleanall opengl_info opengl_makefiles opengl
-endif
-ifdef TARGET_DIRS_FORMS
-forms_all:
-	$(MAKE) -C forms all
-forms_debug:
-	$(MAKE) -C forms debug
-forms_smart:
-	$(MAKE) -C forms smart
-forms_release:
-	$(MAKE) -C forms release
-forms_examples:
-	$(MAKE) -C forms examples
-forms_shared:
-	$(MAKE) -C forms shared
-forms_install:
-	$(MAKE) -C forms install
-forms_sourceinstall:
-	$(MAKE) -C forms sourceinstall
-forms_exampleinstall:
-	$(MAKE) -C forms exampleinstall
-forms_distinstall:
-	$(MAKE) -C forms distinstall
-forms_zipinstall:
-	$(MAKE) -C forms zipinstall
-forms_zipsourceinstall:
-	$(MAKE) -C forms zipsourceinstall
-forms_zipexampleinstall:
-	$(MAKE) -C forms zipexampleinstall
-forms_zipdistinstall:
-	$(MAKE) -C forms zipdistinstall
-forms_clean:
-	$(MAKE) -C forms clean
-forms_distclean:
-	$(MAKE) -C forms distclean
-forms_cleanall:
-	$(MAKE) -C forms cleanall
-forms_info:
-	$(MAKE) -C forms info
-forms_makefiles:
-	$(MAKE) -C forms makefiles
-forms:
-	$(MAKE) -C forms all
-.PHONY: forms_all forms_debug forms_smart forms_release forms_examples forms_shared forms_install forms_sourceinstall forms_exampleinstall forms_distinstall forms_zipinstall forms_zipsourceinstall forms_zipexampleinstall forms_zipdistinstall forms_clean forms_distclean forms_cleanall forms_info forms_makefiles forms
-endif
-ifdef TARGET_DIRS_SVGALIB
-svgalib_all:
-	$(MAKE) -C svgalib all
-svgalib_debug:
-	$(MAKE) -C svgalib debug
-svgalib_smart:
-	$(MAKE) -C svgalib smart
-svgalib_release:
-	$(MAKE) -C svgalib release
-svgalib_examples:
-	$(MAKE) -C svgalib examples
-svgalib_shared:
-	$(MAKE) -C svgalib shared
-svgalib_install:
-	$(MAKE) -C svgalib install
-svgalib_sourceinstall:
-	$(MAKE) -C svgalib sourceinstall
-svgalib_exampleinstall:
-	$(MAKE) -C svgalib exampleinstall
-svgalib_distinstall:
-	$(MAKE) -C svgalib distinstall
-svgalib_zipinstall:
-	$(MAKE) -C svgalib zipinstall
-svgalib_zipsourceinstall:
-	$(MAKE) -C svgalib zipsourceinstall
-svgalib_zipexampleinstall:
-	$(MAKE) -C svgalib zipexampleinstall
-svgalib_zipdistinstall:
-	$(MAKE) -C svgalib zipdistinstall
-svgalib_clean:
-	$(MAKE) -C svgalib clean
-svgalib_distclean:
-	$(MAKE) -C svgalib distclean
-svgalib_cleanall:
-	$(MAKE) -C svgalib cleanall
-svgalib_info:
-	$(MAKE) -C svgalib info
-svgalib_makefiles:
-	$(MAKE) -C svgalib makefiles
-svgalib:
-	$(MAKE) -C svgalib all
-.PHONY: svgalib_all svgalib_debug svgalib_smart svgalib_release svgalib_examples svgalib_shared svgalib_install svgalib_sourceinstall svgalib_exampleinstall svgalib_distinstall svgalib_zipinstall svgalib_zipsourceinstall svgalib_zipexampleinstall svgalib_zipdistinstall svgalib_clean svgalib_distclean svgalib_cleanall svgalib_info svgalib_makefiles svgalib
-endif
-ifdef TARGET_DIRS_GGI
-ggi_all:
-	$(MAKE) -C ggi all
-ggi_debug:
-	$(MAKE) -C ggi debug
-ggi_smart:
-	$(MAKE) -C ggi smart
-ggi_release:
-	$(MAKE) -C ggi release
-ggi_examples:
-	$(MAKE) -C ggi examples
-ggi_shared:
-	$(MAKE) -C ggi shared
-ggi_install:
-	$(MAKE) -C ggi install
-ggi_sourceinstall:
-	$(MAKE) -C ggi sourceinstall
-ggi_exampleinstall:
-	$(MAKE) -C ggi exampleinstall
-ggi_distinstall:
-	$(MAKE) -C ggi distinstall
-ggi_zipinstall:
-	$(MAKE) -C ggi zipinstall
-ggi_zipsourceinstall:
-	$(MAKE) -C ggi zipsourceinstall
-ggi_zipexampleinstall:
-	$(MAKE) -C ggi zipexampleinstall
-ggi_zipdistinstall:
-	$(MAKE) -C ggi zipdistinstall
-ggi_clean:
-	$(MAKE) -C ggi clean
-ggi_distclean:
-	$(MAKE) -C ggi distclean
-ggi_cleanall:
-	$(MAKE) -C ggi cleanall
-ggi_info:
-	$(MAKE) -C ggi info
-ggi_makefiles:
-	$(MAKE) -C ggi makefiles
-ggi:
-	$(MAKE) -C ggi all
-.PHONY: ggi_all ggi_debug ggi_smart ggi_release ggi_examples ggi_shared ggi_install ggi_sourceinstall ggi_exampleinstall ggi_distinstall ggi_zipinstall ggi_zipsourceinstall ggi_zipexampleinstall ggi_zipdistinstall ggi_clean ggi_distclean ggi_cleanall ggi_info ggi_makefiles ggi
-endif
-ifdef TARGET_DIRS_LIBPNG
-libpng_all:
-	$(MAKE) -C libpng all
-libpng_debug:
-	$(MAKE) -C libpng debug
-libpng_smart:
-	$(MAKE) -C libpng smart
-libpng_release:
-	$(MAKE) -C libpng release
-libpng_examples:
-	$(MAKE) -C libpng examples
-libpng_shared:
-	$(MAKE) -C libpng shared
-libpng_install:
-	$(MAKE) -C libpng install
-libpng_sourceinstall:
-	$(MAKE) -C libpng sourceinstall
-libpng_exampleinstall:
-	$(MAKE) -C libpng exampleinstall
-libpng_distinstall:
-	$(MAKE) -C libpng distinstall
-libpng_zipinstall:
-	$(MAKE) -C libpng zipinstall
-libpng_zipsourceinstall:
-	$(MAKE) -C libpng zipsourceinstall
-libpng_zipexampleinstall:
-	$(MAKE) -C libpng zipexampleinstall
-libpng_zipdistinstall:
-	$(MAKE) -C libpng zipdistinstall
-libpng_clean:
-	$(MAKE) -C libpng clean
-libpng_distclean:
-	$(MAKE) -C libpng distclean
-libpng_cleanall:
-	$(MAKE) -C libpng cleanall
-libpng_info:
-	$(MAKE) -C libpng info
-libpng_makefiles:
-	$(MAKE) -C libpng makefiles
-libpng:
-	$(MAKE) -C libpng all
-.PHONY: libpng_all libpng_debug libpng_smart libpng_release libpng_examples libpng_shared libpng_install libpng_sourceinstall libpng_exampleinstall libpng_distinstall libpng_zipinstall libpng_zipsourceinstall libpng_zipexampleinstall libpng_zipdistinstall libpng_clean libpng_distclean libpng_cleanall libpng_info libpng_makefiles libpng
-endif
-ifdef TARGET_DIRS_LIBGD
-libgd_all:
-	$(MAKE) -C libgd all
-libgd_debug:
-	$(MAKE) -C libgd debug
-libgd_smart:
-	$(MAKE) -C libgd smart
-libgd_release:
-	$(MAKE) -C libgd release
-libgd_examples:
-	$(MAKE) -C libgd examples
-libgd_shared:
-	$(MAKE) -C libgd shared
-libgd_install:
-	$(MAKE) -C libgd install
-libgd_sourceinstall:
-	$(MAKE) -C libgd sourceinstall
-libgd_exampleinstall:
-	$(MAKE) -C libgd exampleinstall
-libgd_distinstall:
-	$(MAKE) -C libgd distinstall
-libgd_zipinstall:
-	$(MAKE) -C libgd zipinstall
-libgd_zipsourceinstall:
-	$(MAKE) -C libgd zipsourceinstall
-libgd_zipexampleinstall:
-	$(MAKE) -C libgd zipexampleinstall
-libgd_zipdistinstall:
-	$(MAKE) -C libgd zipdistinstall
-libgd_clean:
-	$(MAKE) -C libgd clean
-libgd_distclean:
-	$(MAKE) -C libgd distclean
-libgd_cleanall:
-	$(MAKE) -C libgd cleanall
-libgd_info:
-	$(MAKE) -C libgd info
-libgd_makefiles:
-	$(MAKE) -C libgd makefiles
-libgd:
-	$(MAKE) -C libgd all
-.PHONY: libgd_all libgd_debug libgd_smart libgd_release libgd_examples libgd_shared libgd_install libgd_sourceinstall libgd_exampleinstall libgd_distinstall libgd_zipinstall libgd_zipsourceinstall libgd_zipexampleinstall libgd_zipdistinstall libgd_clean libgd_distclean libgd_cleanall libgd_info libgd_makefiles libgd
-endif
-ifdef TARGET_DIRS_UTMP
-utmp_all:
-	$(MAKE) -C utmp all
-utmp_debug:
-	$(MAKE) -C utmp debug
-utmp_smart:
-	$(MAKE) -C utmp smart
-utmp_release:
-	$(MAKE) -C utmp release
-utmp_examples:
-	$(MAKE) -C utmp examples
-utmp_shared:
-	$(MAKE) -C utmp shared
-utmp_install:
-	$(MAKE) -C utmp install
-utmp_sourceinstall:
-	$(MAKE) -C utmp sourceinstall
-utmp_exampleinstall:
-	$(MAKE) -C utmp exampleinstall
-utmp_distinstall:
-	$(MAKE) -C utmp distinstall
-utmp_zipinstall:
-	$(MAKE) -C utmp zipinstall
-utmp_zipsourceinstall:
-	$(MAKE) -C utmp zipsourceinstall
-utmp_zipexampleinstall:
-	$(MAKE) -C utmp zipexampleinstall
-utmp_zipdistinstall:
-	$(MAKE) -C utmp zipdistinstall
-utmp_clean:
-	$(MAKE) -C utmp clean
-utmp_distclean:
-	$(MAKE) -C utmp distclean
-utmp_cleanall:
-	$(MAKE) -C utmp cleanall
-utmp_info:
-	$(MAKE) -C utmp info
-utmp_makefiles:
-	$(MAKE) -C utmp makefiles
-utmp:
-	$(MAKE) -C utmp all
-.PHONY: utmp_all utmp_debug utmp_smart utmp_release utmp_examples utmp_shared utmp_install utmp_sourceinstall utmp_exampleinstall utmp_distinstall utmp_zipinstall utmp_zipsourceinstall utmp_zipexampleinstall utmp_zipdistinstall utmp_clean utmp_distclean utmp_cleanall utmp_info utmp_makefiles utmp
-endif
-ifdef TARGET_DIRS_PASZLIB
-paszlib_all:
-	$(MAKE) -C paszlib all
-paszlib_debug:
-	$(MAKE) -C paszlib debug
-paszlib_smart:
-	$(MAKE) -C paszlib smart
-paszlib_release:
-	$(MAKE) -C paszlib release
-paszlib_examples:
-	$(MAKE) -C paszlib examples
-paszlib_shared:
-	$(MAKE) -C paszlib shared
-paszlib_install:
-	$(MAKE) -C paszlib install
-paszlib_sourceinstall:
-	$(MAKE) -C paszlib sourceinstall
-paszlib_exampleinstall:
-	$(MAKE) -C paszlib exampleinstall
-paszlib_distinstall:
-	$(MAKE) -C paszlib distinstall
-paszlib_zipinstall:
-	$(MAKE) -C paszlib zipinstall
-paszlib_zipsourceinstall:
-	$(MAKE) -C paszlib zipsourceinstall
-paszlib_zipexampleinstall:
-	$(MAKE) -C paszlib zipexampleinstall
-paszlib_zipdistinstall:
-	$(MAKE) -C paszlib zipdistinstall
-paszlib_clean:
-	$(MAKE) -C paszlib clean
-paszlib_distclean:
-	$(MAKE) -C paszlib distclean
-paszlib_cleanall:
-	$(MAKE) -C paszlib cleanall
-paszlib_info:
-	$(MAKE) -C paszlib info
-paszlib_makefiles:
-	$(MAKE) -C paszlib makefiles
-paszlib:
-	$(MAKE) -C paszlib all
-.PHONY: paszlib_all paszlib_debug paszlib_smart paszlib_release paszlib_examples paszlib_shared paszlib_install paszlib_sourceinstall paszlib_exampleinstall paszlib_distinstall paszlib_zipinstall paszlib_zipsourceinstall paszlib_zipexampleinstall paszlib_zipdistinstall paszlib_clean paszlib_distclean paszlib_cleanall paszlib_info paszlib_makefiles paszlib
-endif
-ifdef TARGET_DIRS_GDBINT
-gdbint_all:
-	$(MAKE) -C gdbint all
-gdbint_debug:
-	$(MAKE) -C gdbint debug
-gdbint_smart:
-	$(MAKE) -C gdbint smart
-gdbint_release:
-	$(MAKE) -C gdbint release
-gdbint_examples:
-	$(MAKE) -C gdbint examples
-gdbint_shared:
-	$(MAKE) -C gdbint shared
-gdbint_install:
-	$(MAKE) -C gdbint install
-gdbint_sourceinstall:
-	$(MAKE) -C gdbint sourceinstall
-gdbint_exampleinstall:
-	$(MAKE) -C gdbint exampleinstall
-gdbint_distinstall:
-	$(MAKE) -C gdbint distinstall
-gdbint_zipinstall:
-	$(MAKE) -C gdbint zipinstall
-gdbint_zipsourceinstall:
-	$(MAKE) -C gdbint zipsourceinstall
-gdbint_zipexampleinstall:
-	$(MAKE) -C gdbint zipexampleinstall
-gdbint_zipdistinstall:
-	$(MAKE) -C gdbint zipdistinstall
-gdbint_clean:
-	$(MAKE) -C gdbint clean
-gdbint_distclean:
-	$(MAKE) -C gdbint distclean
-gdbint_cleanall:
-	$(MAKE) -C gdbint cleanall
-gdbint_info:
-	$(MAKE) -C gdbint info
-gdbint_makefiles:
-	$(MAKE) -C gdbint makefiles
-gdbint:
-	$(MAKE) -C gdbint all
-.PHONY: gdbint_all gdbint_debug gdbint_smart gdbint_release gdbint_examples gdbint_shared gdbint_install gdbint_sourceinstall gdbint_exampleinstall gdbint_distinstall gdbint_zipinstall gdbint_zipsourceinstall gdbint_zipexampleinstall gdbint_zipdistinstall gdbint_clean gdbint_distclean gdbint_cleanall gdbint_info gdbint_makefiles gdbint
-endif
-ifdef TARGET_DIRS_CMEM
-cmem_all:
-	$(MAKE) -C cmem all
-cmem_debug:
-	$(MAKE) -C cmem debug
-cmem_smart:
-	$(MAKE) -C cmem smart
-cmem_release:
-	$(MAKE) -C cmem release
-cmem_examples:
-	$(MAKE) -C cmem examples
-cmem_shared:
-	$(MAKE) -C cmem shared
-cmem_install:
-	$(MAKE) -C cmem install
-cmem_sourceinstall:
-	$(MAKE) -C cmem sourceinstall
-cmem_exampleinstall:
-	$(MAKE) -C cmem exampleinstall
-cmem_distinstall:
-	$(MAKE) -C cmem distinstall
-cmem_zipinstall:
-	$(MAKE) -C cmem zipinstall
-cmem_zipsourceinstall:
-	$(MAKE) -C cmem zipsourceinstall
-cmem_zipexampleinstall:
-	$(MAKE) -C cmem zipexampleinstall
-cmem_zipdistinstall:
-	$(MAKE) -C cmem zipdistinstall
-cmem_clean:
-	$(MAKE) -C cmem clean
-cmem_distclean:
-	$(MAKE) -C cmem distclean
-cmem_cleanall:
-	$(MAKE) -C cmem cleanall
-cmem_info:
-	$(MAKE) -C cmem info
-cmem_makefiles:
-	$(MAKE) -C cmem makefiles
-cmem:
-	$(MAKE) -C cmem all
-.PHONY: cmem_all cmem_debug cmem_smart cmem_release cmem_examples cmem_shared cmem_install cmem_sourceinstall cmem_exampleinstall cmem_distinstall cmem_zipinstall cmem_zipsourceinstall cmem_zipexampleinstall cmem_zipdistinstall cmem_clean cmem_distclean cmem_cleanall cmem_info cmem_makefiles cmem
-endif
-ifdef TARGET_DIRS_REGEXPR
-regexpr_all:
-	$(MAKE) -C regexpr all
-regexpr_debug:
-	$(MAKE) -C regexpr debug
-regexpr_smart:
-	$(MAKE) -C regexpr smart
-regexpr_release:
-	$(MAKE) -C regexpr release
-regexpr_examples:
-	$(MAKE) -C regexpr examples
-regexpr_shared:
-	$(MAKE) -C regexpr shared
-regexpr_install:
-	$(MAKE) -C regexpr install
-regexpr_sourceinstall:
-	$(MAKE) -C regexpr sourceinstall
-regexpr_exampleinstall:
-	$(MAKE) -C regexpr exampleinstall
-regexpr_distinstall:
-	$(MAKE) -C regexpr distinstall
-regexpr_zipinstall:
-	$(MAKE) -C regexpr zipinstall
-regexpr_zipsourceinstall:
-	$(MAKE) -C regexpr zipsourceinstall
-regexpr_zipexampleinstall:
-	$(MAKE) -C regexpr zipexampleinstall
-regexpr_zipdistinstall:
-	$(MAKE) -C regexpr zipdistinstall
-regexpr_clean:
-	$(MAKE) -C regexpr clean
-regexpr_distclean:
-	$(MAKE) -C regexpr distclean
-regexpr_cleanall:
-	$(MAKE) -C regexpr cleanall
-regexpr_info:
-	$(MAKE) -C regexpr info
-regexpr_makefiles:
-	$(MAKE) -C regexpr makefiles
-regexpr:
-	$(MAKE) -C regexpr all
-.PHONY: regexpr_all regexpr_debug regexpr_smart regexpr_release regexpr_examples regexpr_shared regexpr_install regexpr_sourceinstall regexpr_exampleinstall regexpr_distinstall regexpr_zipinstall regexpr_zipsourceinstall regexpr_zipexampleinstall regexpr_zipdistinstall regexpr_clean regexpr_distclean regexpr_cleanall regexpr_info regexpr_makefiles regexpr
-endif
-ifdef TARGET_DIRS_UNZIP
-unzip_all:
-	$(MAKE) -C unzip all
-unzip_debug:
-	$(MAKE) -C unzip debug
-unzip_smart:
-	$(MAKE) -C unzip smart
-unzip_release:
-	$(MAKE) -C unzip release
-unzip_examples:
-	$(MAKE) -C unzip examples
-unzip_shared:
-	$(MAKE) -C unzip shared
-unzip_install:
-	$(MAKE) -C unzip install
-unzip_sourceinstall:
-	$(MAKE) -C unzip sourceinstall
-unzip_exampleinstall:
-	$(MAKE) -C unzip exampleinstall
-unzip_distinstall:
-	$(MAKE) -C unzip distinstall
-unzip_zipinstall:
-	$(MAKE) -C unzip zipinstall
-unzip_zipsourceinstall:
-	$(MAKE) -C unzip zipsourceinstall
-unzip_zipexampleinstall:
-	$(MAKE) -C unzip zipexampleinstall
-unzip_zipdistinstall:
-	$(MAKE) -C unzip zipdistinstall
-unzip_clean:
-	$(MAKE) -C unzip clean
-unzip_distclean:
-	$(MAKE) -C unzip distclean
-unzip_cleanall:
-	$(MAKE) -C unzip cleanall
-unzip_info:
-	$(MAKE) -C unzip info
-unzip_makefiles:
-	$(MAKE) -C unzip makefiles
-unzip:
-	$(MAKE) -C unzip all
-.PHONY: unzip_all unzip_debug unzip_smart unzip_release unzip_examples unzip_shared unzip_install unzip_sourceinstall unzip_exampleinstall unzip_distinstall unzip_zipinstall unzip_zipsourceinstall unzip_zipexampleinstall unzip_zipdistinstall unzip_clean unzip_distclean unzip_cleanall unzip_info unzip_makefiles unzip
-endif
-ifdef TARGET_DIRS_MMSYSTEM
-mmsystem_all:
-	$(MAKE) -C mmsystem all
-mmsystem_debug:
-	$(MAKE) -C mmsystem debug
-mmsystem_smart:
-	$(MAKE) -C mmsystem smart
-mmsystem_release:
-	$(MAKE) -C mmsystem release
-mmsystem_examples:
-	$(MAKE) -C mmsystem examples
-mmsystem_shared:
-	$(MAKE) -C mmsystem shared
-mmsystem_install:
-	$(MAKE) -C mmsystem install
-mmsystem_sourceinstall:
-	$(MAKE) -C mmsystem sourceinstall
-mmsystem_exampleinstall:
-	$(MAKE) -C mmsystem exampleinstall
-mmsystem_distinstall:
-	$(MAKE) -C mmsystem distinstall
-mmsystem_zipinstall:
-	$(MAKE) -C mmsystem zipinstall
-mmsystem_zipsourceinstall:
-	$(MAKE) -C mmsystem zipsourceinstall
-mmsystem_zipexampleinstall:
-	$(MAKE) -C mmsystem zipexampleinstall
-mmsystem_zipdistinstall:
-	$(MAKE) -C mmsystem zipdistinstall
-mmsystem_clean:
-	$(MAKE) -C mmsystem clean
-mmsystem_distclean:
-	$(MAKE) -C mmsystem distclean
-mmsystem_cleanall:
-	$(MAKE) -C mmsystem cleanall
-mmsystem_info:
-	$(MAKE) -C mmsystem info
-mmsystem_makefiles:
-	$(MAKE) -C mmsystem makefiles
-mmsystem:
-	$(MAKE) -C mmsystem all
-.PHONY: mmsystem_all mmsystem_debug mmsystem_smart mmsystem_release mmsystem_examples mmsystem_shared mmsystem_install mmsystem_sourceinstall mmsystem_exampleinstall mmsystem_distinstall mmsystem_zipinstall mmsystem_zipsourceinstall mmsystem_zipexampleinstall mmsystem_zipdistinstall mmsystem_clean mmsystem_distclean mmsystem_cleanall mmsystem_info mmsystem_makefiles mmsystem
-endif
-ifdef TARGET_DIRS_ASYNCIO
-asyncio_all:
-	$(MAKE) -C asyncio all
-asyncio_debug:
-	$(MAKE) -C asyncio debug
-asyncio_smart:
-	$(MAKE) -C asyncio smart
-asyncio_release:
-	$(MAKE) -C asyncio release
-asyncio_examples:
-	$(MAKE) -C asyncio examples
-asyncio_shared:
-	$(MAKE) -C asyncio shared
-asyncio_install:
-	$(MAKE) -C asyncio install
-asyncio_sourceinstall:
-	$(MAKE) -C asyncio sourceinstall
-asyncio_exampleinstall:
-	$(MAKE) -C asyncio exampleinstall
-asyncio_distinstall:
-	$(MAKE) -C asyncio distinstall
-asyncio_zipinstall:
-	$(MAKE) -C asyncio zipinstall
-asyncio_zipsourceinstall:
-	$(MAKE) -C asyncio zipsourceinstall
-asyncio_zipexampleinstall:
-	$(MAKE) -C asyncio zipexampleinstall
-asyncio_zipdistinstall:
-	$(MAKE) -C asyncio zipdistinstall
-asyncio_clean:
-	$(MAKE) -C asyncio clean
-asyncio_distclean:
-	$(MAKE) -C asyncio distclean
-asyncio_cleanall:
-	$(MAKE) -C asyncio cleanall
-asyncio_info:
-	$(MAKE) -C asyncio info
-asyncio_makefiles:
-	$(MAKE) -C asyncio makefiles
-asyncio:
-	$(MAKE) -C asyncio all
-.PHONY: asyncio_all asyncio_debug asyncio_smart asyncio_release asyncio_examples asyncio_shared asyncio_install asyncio_sourceinstall asyncio_exampleinstall asyncio_distinstall asyncio_zipinstall asyncio_zipsourceinstall asyncio_zipexampleinstall asyncio_zipdistinstall asyncio_clean asyncio_distclean asyncio_cleanall asyncio_info asyncio_makefiles asyncio
-endif
-ifdef TARGET_DIRS_BFD
-bfd_all:
-	$(MAKE) -C bfd all
-bfd_debug:
-	$(MAKE) -C bfd debug
-bfd_smart:
-	$(MAKE) -C bfd smart
-bfd_release:
-	$(MAKE) -C bfd release
-bfd_examples:
-	$(MAKE) -C bfd examples
-bfd_shared:
-	$(MAKE) -C bfd shared
-bfd_install:
-	$(MAKE) -C bfd install
-bfd_sourceinstall:
-	$(MAKE) -C bfd sourceinstall
-bfd_exampleinstall:
-	$(MAKE) -C bfd exampleinstall
-bfd_distinstall:
-	$(MAKE) -C bfd distinstall
-bfd_zipinstall:
-	$(MAKE) -C bfd zipinstall
-bfd_zipsourceinstall:
-	$(MAKE) -C bfd zipsourceinstall
-bfd_zipexampleinstall:
-	$(MAKE) -C bfd zipexampleinstall
-bfd_zipdistinstall:
-	$(MAKE) -C bfd zipdistinstall
-bfd_clean:
-	$(MAKE) -C bfd clean
-bfd_distclean:
-	$(MAKE) -C bfd distclean
-bfd_cleanall:
-	$(MAKE) -C bfd cleanall
-bfd_info:
-	$(MAKE) -C bfd info
-bfd_makefiles:
-	$(MAKE) -C bfd makefiles
-bfd:
-	$(MAKE) -C bfd all
-.PHONY: bfd_all bfd_debug bfd_smart bfd_release bfd_examples bfd_shared bfd_install bfd_sourceinstall bfd_exampleinstall bfd_distinstall bfd_zipinstall bfd_zipsourceinstall bfd_zipexampleinstall bfd_zipdistinstall bfd_clean bfd_distclean bfd_cleanall bfd_info bfd_makefiles bfd
-endif
-ifdef TARGET_DIRS_GDBM
-gdbm_all:
-	$(MAKE) -C gdbm all
-gdbm_debug:
-	$(MAKE) -C gdbm debug
-gdbm_smart:
-	$(MAKE) -C gdbm smart
-gdbm_release:
-	$(MAKE) -C gdbm release
-gdbm_examples:
-	$(MAKE) -C gdbm examples
-gdbm_shared:
-	$(MAKE) -C gdbm shared
-gdbm_install:
-	$(MAKE) -C gdbm install
-gdbm_sourceinstall:
-	$(MAKE) -C gdbm sourceinstall
-gdbm_exampleinstall:
-	$(MAKE) -C gdbm exampleinstall
-gdbm_distinstall:
-	$(MAKE) -C gdbm distinstall
-gdbm_zipinstall:
-	$(MAKE) -C gdbm zipinstall
-gdbm_zipsourceinstall:
-	$(MAKE) -C gdbm zipsourceinstall
-gdbm_zipexampleinstall:
-	$(MAKE) -C gdbm zipexampleinstall
-gdbm_zipdistinstall:
-	$(MAKE) -C gdbm zipdistinstall
-gdbm_clean:
-	$(MAKE) -C gdbm clean
-gdbm_distclean:
-	$(MAKE) -C gdbm distclean
-gdbm_cleanall:
-	$(MAKE) -C gdbm cleanall
-gdbm_info:
-	$(MAKE) -C gdbm info
-gdbm_makefiles:
-	$(MAKE) -C gdbm makefiles
-gdbm:
-	$(MAKE) -C gdbm all
-.PHONY: gdbm_all gdbm_debug gdbm_smart gdbm_release gdbm_examples gdbm_shared gdbm_install gdbm_sourceinstall gdbm_exampleinstall gdbm_distinstall gdbm_zipinstall gdbm_zipsourceinstall gdbm_zipexampleinstall gdbm_zipdistinstall gdbm_clean gdbm_distclean gdbm_cleanall gdbm_info gdbm_makefiles gdbm
-endif
-all: $(addsuffix _all,$(TARGET_DIRS))
-debug: $(addsuffix _debug,$(TARGET_DIRS))
-smart: $(addsuffix _smart,$(TARGET_DIRS))
-release: $(addsuffix _release,$(TARGET_DIRS))
-examples: $(addsuffix _examples,$(TARGET_DIRS))
-shared: $(addsuffix _shared,$(TARGET_DIRS))
-install: $(addsuffix _install,$(TARGET_DIRS))
-sourceinstall: $(addsuffix _sourceinstall,$(TARGET_DIRS))
-exampleinstall: $(addsuffix _exampleinstall,$(TARGET_DIRS))
-distinstall: $(addsuffix _distinstall,$(TARGET_DIRS))
-zipinstall: $(addsuffix _zipinstall,$(TARGET_DIRS))
-zipsourceinstall: $(addsuffix _zipsourceinstall,$(TARGET_DIRS))
-zipexampleinstall: $(addsuffix _zipexampleinstall,$(TARGET_DIRS))
-zipdistinstall: $(addsuffix _zipdistinstall,$(TARGET_DIRS))
-clean: $(addsuffix _clean,$(TARGET_DIRS))
-distclean: $(addsuffix _distclean,$(TARGET_DIRS))
-cleanall: $(addsuffix _cleanall,$(TARGET_DIRS))
-info: fpc_info
-makefiles: fpc_makefiles $(addsuffix _makefiles,$(TARGET_DIRS))
-.PHONY: all debug smart release examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefiles
-ifneq ($(wildcard fpcmake.loc),)
-include fpcmake.loc
-endif

+ 0 - 32
packages/Makefile.fpc

@@ -1,32 +0,0 @@
-#
-#   Makefile.fpc for Free Pascal Packages
-#
-
-[target]
-dirs_linux=zlib ncurses x11 gtk syslog \
-           inet uncgi \
-           mysql ibase postgres oracle \
-           opengl forms svgalib ggi libpng libgd \
-           utmp paszlib gdbint cmem regexpr unzip
-dirs_win32=uncgi gtk gdbint ibase mysql zlib paszlib unzip regexpr opengl mmsystem
-dirs_go32v2=uncgi gdbint paszlib unzip regexpr
-dirs_netbsd=zlib ncurses x11 gtk syslog \
-           inet uncgi \
-           mysql ibase postgres oracle \
-           opengl forms svgalib ggi libpng libgd \
-           utmp paszlib gdbint cmem regexpr unzip asyncio bfd gdbm
-dirs_beos=paszlib regexpr
-dirs_qnx=paszlib regexpr
-dirs_sunos=paszlib regexpr
-dirs_os2=uncgi paszlib unzip regexpr
-dirs_freebsd=zlib ncurses x11 gtk syslog \
-           inet uncgi \
-           mysql ibase postgres oracle \
-           opengl forms svgalib ggi libpng libgd \
-           utmp paszlib gdbint cmem regexpr unzip asyncio bfd gdbm
-
-[install]
-fpcpackage=y
-
-[default]
-fpcdir=..

+ 0 - 1076
packages/asyncio/Makefile

@@ -1,1076 +0,0 @@
-#
-# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/27]
-#
-default: all
-MAKEFILETARGETS=linux go32v2 win32 os2 freebsd beos netbsd amiga atari sunos qnx
-override PATH:=$(subst \,/,$(PATH))
-ifeq ($(findstring ;,$(PATH)),)
-inUnix=1
-SEARCHPATH:=$(filter-out .,$(subst :, ,$(PATH)))
-else
-SEARCHPATH:=$(subst ;, ,$(PATH))
-endif
-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 cygwin,$(MACHTYPE)),)
-inCygWin=1
-endif
-endif
-ifeq ($(OS_TARGET),freebsd)
-BSDhier=1
-endif
-ifeq ($(OS_TARGET),netbsd)
-BSDhier=1
-endif
-ifdef inUnix
-BATCHEXT=.sh
-else
-ifdef inOS2
-BATCHEXT=.cmd
-else
-BATCHEXT=.bat
-endif
-endif
-ifdef inUnix
-PATHSEP=/
-else
-PATHSEP:=$(subst /,\,/)
-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
-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=ppc386
-endif
-else
-override FPC=ppc386
-endif
-endif
-override FPC:=$(subst $(SRCEXEEXT),,$(FPC))
-override FPC:=$(subst \,/,$(FPC))$(SRCEXEEXT)
-ifndef FPC_VERSION
-FPC_VERSION:=$(shell $(FPC) -iV)
-endif
-export FPC FPC_VERSION
-ifeq ($(findstring 1.0.,$(FPC_VERSION)),)
-COMPILERINFO:=$(shell $(FPC) -iSP -iTP -iSO -iTO)
-ifndef CPU_SOURCE
-CPU_SOURCE:=$(word 1,$(COMPILERINFO))
-endif
-ifndef CPU_TARGET
-CPU_TARGET:=$(word 2,$(COMPILERINFO))
-endif
-ifndef OS_SOURCE
-OS_SOURCE:=$(word 3,$(COMPILERINFO))
-endif
-ifndef OS_TARGET
-OS_TARGET:=$(word 4,$(COMPILERINFO))
-endif
-else
-ifndef CPU_SOURCE
-CPU_SOURCE:=$(shell $(FPC) -iSP)
-endif
-ifndef CPU_TARGET
-CPU_TARGET:=$(shell $(FPC) -iTP)
-endif
-ifndef OS_SOURCE
-OS_SOURCE:=$(shell $(FPC) -iSO)
-endif
-ifndef OS_TARGET
-OS_TARGET:=$(shell $(FPC) -iTO)
-endif
-endif
-FULL_TARGET=$(CPU_TARGET)-$(OS_TARGET)
-FULL_SOURCE=$(CPU_SOURCE)-$(OS_SOURCE)
-ifneq ($(FULL_TARGET),$(FULL_SOURCE))
-CROSSCOMPILE=1
-endif
-ifeq ($(findstring makefile,$(MAKECMDGOALS)),)
-ifeq ($(findstring $(OS_TARGET),$(MAKEFILETARGETS)),)
-$(error The Makefile doesn't support target $(OS_TARGET), please run fpcmake first)
-endif
-endif
-export OS_TARGET OS_SOURCE CPU_TARGET CPU_SOURCE FULL_TARGET FULL_SOURCE 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=c:/pp
-endif
-endif
-endif
-endif
-ifndef CROSSDIR
-CROSSDIR:=$(FPCDIR)/cross/$(FULL_TARGET)
-endif
-ifndef CROSSTARGETDIR
-CROSSTARGETDIR=$(CROSSDIR)/$(FULL_TARGET)
-endif
-ifdef CROSSCOMPILE
-UNITSDIR:=$(wildcard $(CROSSTARGETDIR)/units)
-ifeq ($(UNITSDIR),)
-UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
-endif
-else
-UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
-endif
-PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages)
-ifeq ($(OS_TARGET),linux)
-override TARGET_DIRS+=libasync fpasync
-endif
-ifeq ($(OS_TARGET),freebsd)
-override TARGET_DIRS+=libasync fpasync
-endif
-ifdef REQUIRE_UNITSDIR
-override UNITSDIR+=$(REQUIRE_UNITSDIR)
-endif
-ifdef REQUIRE_PACKAGESDIR
-override PACKAGESDIR+=$(REQUIRE_PACKAGESDIR)
-endif
-ifdef ZIPINSTALL
-ifeq ($(OS_TARGET),linux)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_TARGET),freebsd)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_TARGET),netbsd)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_TARGET),sunos)
-UNIXINSTALLDIR=1
-endif
-else
-ifeq ($(OS_SOURCE),linux)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_SOURCE),freebsd)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_SOURCE),netbsd)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_TARGET),sunos)
-UNIXINSTALLDIR=1
-endif
-endif
-ifndef INSTALL_PREFIX
-ifdef PREFIX
-INSTALL_PREFIX=$(PREFIX)
-endif
-endif
-ifndef INSTALL_PREFIX
-ifdef UNIXINSTALLDIR
-INSTALL_PREFIX=/usr/local
-else
-ifdef INSTALL_FPCPACKAGE
-INSTALL_BASEDIR:=/pp
-else
-INSTALL_BASEDIR:=/$(PACKAGE_NAME)
-endif
-endif
-endif
-export INSTALL_PREFIX
-ifndef DIST_DESTDIR
-DIST_DESTDIR:=$(BASEDIR)
-endif
-export DIST_DESTDIR
-ifndef INSTALL_BASEDIR
-ifdef UNIXINSTALLDIR
-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 UNIXINSTALLDIR
-INSTALL_BINDIR:=$(INSTALL_PREFIX)/bin
-else
-INSTALL_BINDIR:=$(INSTALL_BASEDIR)/bin
-ifdef INSTALL_FPCPACKAGE
-INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(OS_TARGET)
-endif
-endif
-endif
-ifndef INSTALL_UNITDIR
-ifdef CROSSCOMPILE
-INSTALL_UNITDIR:=$(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/units
-else
-INSTALL_UNITDIR:=$(INSTALL_BASEDIR)/units/$(OS_TARGET)
-endif
-ifdef INSTALL_FPCPACKAGE
-ifdef PACKAGE_NAME
-INSTALL_UNITDIR:=$(INSTALL_UNITDIR)/$(PACKAGE_NAME)
-endif
-endif
-endif
-ifndef INSTALL_LIBDIR
-ifdef UNIXINSTALLDIR
-INSTALL_LIBDIR:=$(INSTALL_PREFIX)/lib
-else
-INSTALL_LIBDIR:=$(INSTALL_UNITDIR)
-endif
-endif
-ifndef INSTALL_SOURCEDIR
-ifdef UNIXINSTALLDIR
-ifdef INSTALL_FPCPACKAGE
-ifdef BSDhier
-INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/share/src/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-else
-INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/src/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-endif
-else
-ifdef BSDhier
-INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/share/src/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-else
-INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/src/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-endif
-endif
-else
-ifdef INSTALL_FPCPACKAGE
-INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source/$(PACKAGE_NAME)
-else
-INSTALL_SOURCEDIRL:=$(INSTALL_BASEDIR)/source
-endif
-endif
-endif
-ifndef INSTALL_DOCDIR
-ifdef UNIXINSTALLDIR
-ifdef INSTALL_FPCPACKAGE
-ifdef BSDhier
-INSTALL_DOCDIR:=$(INSTALL_PREFIX)/share/doc/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-else
-INSTALL_DOCDIR:=$(INSTALL_PREFIX)/doc/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-endif
-else
-ifdef BSDhier
-INSTALL_DOCDIR:=$(INSTALL_PREFIX)/share/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-else
-INSTALL_DOCDIR:=$(INSTALL_PREFIX)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-endif
-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 UNIXINSTALLDIR
-ifdef INSTALL_FPCPACKAGE
-ifdef BSDhier
-INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-else
-INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/fpc-$(FPC_VERSION)/examples/$(PACKAGE_NAME)
-endif
-else
-ifdef BSDhier
-INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-else
-INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-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
-ifdef CROSSCOMPILE
-ifndef CROSSBINDIR
-CROSSBINDIR:=$(wildcard $(CROSSTARGETDIR)/bin/$(FULL_SOURCE))
-ifeq ($(CROSSBINDIR),)
-CROSSBINDIR:=$(wildcard $(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/bin/$(FULL_SOURCE))
-endif
-endif
-else
-CROSSBINDIR=
-endif
-LOADEREXT=.as
-EXEEXT=.exe
-PPLEXT=.ppl
-PPUEXT=.ppu
-OEXT=.o
-ASMEXT=.s
-SMARTEXT=.sl
-STATICLIBEXT=.a
-SHAREDLIBEXT=.so
-STATICLIBPREFIX=libp
-RSTEXT=.rst
-FPCMADE=fpcmade
-ifeq ($(OS_TARGET),go32v1)
-PPUEXT=.pp1
-OEXT=.o1
-ASMEXT=.s1
-SMARTEXT=.sl1
-STATICLIBEXT=.a1
-SHAREDLIBEXT=.so1
-STATICLIBPREFIX=
-FPCMADE=fpcmade.v1
-PACKAGESUFFIX=v1
-endif
-ifeq ($(OS_TARGET),go32v2)
-STATICLIBPREFIX=
-FPCMADE=fpcmade.dos
-ZIPSUFFIX=go32
-endif
-ifeq ($(OS_TARGET),linux)
-EXEEXT=
-HASSHAREDLIB=1
-FPCMADE=fpcmade.lnx
-ZIPSUFFIX=linux
-endif
-ifeq ($(OS_TARGET),freebsd)
-EXEEXT=
-HASSHAREDLIB=1
-FPCMADE=fpcmade.freebsd
-ZIPSUFFIX=freebsd
-endif
-ifeq ($(OS_TARGET),netbsd)
-EXEEXT=
-HASSHAREDLIB=1
-FPCMADE=fpcmade.netbsd
-ZIPSUFFIX=netbsd
-endif
-ifeq ($(OS_TARGET),win32)
-PPUEXT=.ppw
-OEXT=.ow
-ASMEXT=.sw
-SMARTEXT=.slw
-STATICLIBEXT=.aw
-SHAREDLIBEXT=.dll
-FPCMADE=fpcmade.w32
-ZIPSUFFIX=w32
-endif
-ifeq ($(OS_TARGET),os2)
-PPUEXT=.ppo
-ASMEXT=.so2
-OEXT=.oo2
-AOUTEXT=.out
-SMARTEXT=.so
-STATICLIBEXT=.ao2
-SHAREDLIBEXT=.dll
-FPCMADE=fpcmade.os2
-ZIPSUFFIX=emx
-endif
-ifeq ($(OS_TARGET),amiga)
-EXEEXT=
-PPUEXT=.ppa
-ASMEXT=.asm
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-SHAREDLIBEXT=.library
-FPCMADE=fpcmade.amg
-endif
-ifeq ($(OS_TARGET),atari)
-PPUEXT=.ppt
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=.ttp
-FPCMADE=fpcmade.ata
-endif
-ifeq ($(OS_TARGET),beos)
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=
-FPCMADE=fpcmade.be
-ZIPSUFFIX=be
-endif
-ifeq ($(OS_TARGET),sunos)
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=
-FPCMADE=fpcmade.sun
-ZIPSUFFIX=sun
-endif
-ifeq ($(OS_TARGET),qnx)
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=
-FPCMADE=fpcmade.qnx
-ZIPSUFFIX=qnx
-endif
-ifndef ECHO
-ECHO:=$(strip $(wildcard $(addsuffix /gecho$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(ECHO),)
-ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(ECHO),)
-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=
-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=
-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=
-else
-CPPROG:=$(firstword $(CPPROG))
-endif
-endif
-export CPPROG
-ifndef RMPROG
-RMPROG:=$(strip $(wildcard $(addsuffix /rm$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(RMPROG),)
-RMPROG=
-else
-RMPROG:=$(firstword $(RMPROG))
-endif
-endif
-export RMPROG
-ifndef MVPROG
-MVPROG:=$(strip $(wildcard $(addsuffix /mv$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(MVPROG),)
-MVPROG=
-else
-MVPROG:=$(firstword $(MVPROG))
-endif
-endif
-export MVPROG
-ifndef ECHOREDIR
-ECHOREDIR:=$(subst /,$(PATHSEP),$(ECHO))
-endif
-ifndef COPY
-COPY:=$(CPPROG) -fp
-endif
-ifndef COPYTREE
-COPYTREE:=$(CPPROG) -rfp
-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=
-else
-PPUMOVE:=$(firstword $(PPUMOVE))
-endif
-endif
-export PPUMOVE
-ifndef FPCMAKE
-FPCMAKE:=$(strip $(wildcard $(addsuffix /fpcmake$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(FPCMAKE),)
-FPCMAKE=
-else
-FPCMAKE:=$(firstword $(FPCMAKE))
-endif
-endif
-export FPCMAKE
-ifndef ZIPPROG
-ZIPPROG:=$(strip $(wildcard $(addsuffix /zip$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(ZIPPROG),)
-ZIPPROG=
-else
-ZIPPROG:=$(firstword $(ZIPPROG))
-endif
-endif
-export ZIPPROG
-ifndef TARPROG
-TARPROG:=$(strip $(wildcard $(addsuffix /tar$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(TARPROG),)
-TARPROG=
-else
-TARPROG:=$(firstword $(TARPROG))
-endif
-endif
-export TARPROG
-ASNAME=as
-LDNAME=ld
-ARNAME=ar
-RCNAME=rc
-ifeq ($(OS_TARGET),win32)
-ASNAME=asw
-LDNAME=ldw
-ARNAME=arw
-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$(BATCHEXT)
-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=vI
-TAREXT=.tar.bz2
-else
-TAROPT=vz
-TAREXT=.tar.gz
-endif
-ifndef NOCPUDEF
-override FPCOPTDEF=$(CPU_TARGET)
-endif
-ifneq ($(OS_TARGET),$(OS_SOURCE))
-override FPCOPT+=-T$(OS_TARGET)
-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
-ifeq ($(CPU_TARGET),i386)
-FPCCPUOPT:=-OG2p3
-else
-FPCCPUOPT:=
-endif
-override FPCOPT+=-Xs $(FPCCPUOPT) -n
-override FPCOPTDEF+=RELEASE
-endif
-ifdef STRIP
-override FPCOPT+=-Xs
-endif
-ifdef OPTIMIZE
-ifeq ($(CPU_TARGET),i386)
-override FPCOPT+=-OG2p3
-endif
-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 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 COMPILER:=$(FPC) $(FPCOPT)
-ifeq (,$(findstring -s ,$(COMPILER)))
-EXECPPAS=
-else
-ifeq ($(OS_SOURCE),$(OS_TARGET))
-EXECPPAS:=@$(PPAS)
-endif
-endif
-ifdef TARGET_RSTS
-override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS))
-override CLEANRSTFILES+=$(RSTFILES)
-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)))
-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)
-fpc_distclean: clean
-ifdef COMPILER_UNITTARGETDIR
-TARGETDIRCLEAN=fpc_clean
-endif
-fpc_cleanall: $(CLEANTARGET) $(TARGETDIRCLEAN)
-ifdef CLEANEXEFILES
-	-$(DEL) $(CLEANEXEFILES)
-endif
-	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
-	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
-ifdef AOUTEXT
-	-$(DEL) *$(AOUTEXT)
-endif
-.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 Target.. $(FULL_SOURCE)
-	@$(ECHO)  Full Source.. $(FULL_TARGET)
-	@$(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)  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)  ZipPrefix............ $(ZIPPREFIX)
-	@$(ECHO)  ZipSuffix............ $(ZIPSUFFIX)
-	@$(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 ($(OS_TARGET),linux)
-TARGET_DIRS_LIBASYNC=1
-TARGET_DIRS_FPASYNC=1
-endif
-ifeq ($(OS_TARGET),freebsd)
-TARGET_DIRS_LIBASYNC=1
-TARGET_DIRS_FPASYNC=1
-endif
-ifdef TARGET_DIRS_LIBASYNC
-libasync_all:
-	$(MAKE) -C libasync all
-libasync_debug:
-	$(MAKE) -C libasync debug
-libasync_smart:
-	$(MAKE) -C libasync smart
-libasync_release:
-	$(MAKE) -C libasync release
-libasync_examples:
-	$(MAKE) -C libasync examples
-libasync_shared:
-	$(MAKE) -C libasync shared
-libasync_install:
-	$(MAKE) -C libasync install
-libasync_sourceinstall:
-	$(MAKE) -C libasync sourceinstall
-libasync_exampleinstall:
-	$(MAKE) -C libasync exampleinstall
-libasync_distinstall:
-	$(MAKE) -C libasync distinstall
-libasync_zipinstall:
-	$(MAKE) -C libasync zipinstall
-libasync_zipsourceinstall:
-	$(MAKE) -C libasync zipsourceinstall
-libasync_zipexampleinstall:
-	$(MAKE) -C libasync zipexampleinstall
-libasync_zipdistinstall:
-	$(MAKE) -C libasync zipdistinstall
-libasync_clean:
-	$(MAKE) -C libasync clean
-libasync_distclean:
-	$(MAKE) -C libasync distclean
-libasync_cleanall:
-	$(MAKE) -C libasync cleanall
-libasync_info:
-	$(MAKE) -C libasync info
-libasync_makefiles:
-	$(MAKE) -C libasync makefiles
-libasync:
-	$(MAKE) -C libasync all
-.PHONY: libasync_all libasync_debug libasync_smart libasync_release libasync_examples libasync_shared libasync_install libasync_sourceinstall libasync_exampleinstall libasync_distinstall libasync_zipinstall libasync_zipsourceinstall libasync_zipexampleinstall libasync_zipdistinstall libasync_clean libasync_distclean libasync_cleanall libasync_info libasync_makefiles libasync
-endif
-ifdef TARGET_DIRS_FPASYNC
-fpasync_all:
-	$(MAKE) -C fpasync all
-fpasync_debug:
-	$(MAKE) -C fpasync debug
-fpasync_smart:
-	$(MAKE) -C fpasync smart
-fpasync_release:
-	$(MAKE) -C fpasync release
-fpasync_examples:
-	$(MAKE) -C fpasync examples
-fpasync_shared:
-	$(MAKE) -C fpasync shared
-fpasync_install:
-	$(MAKE) -C fpasync install
-fpasync_sourceinstall:
-	$(MAKE) -C fpasync sourceinstall
-fpasync_exampleinstall:
-	$(MAKE) -C fpasync exampleinstall
-fpasync_distinstall:
-	$(MAKE) -C fpasync distinstall
-fpasync_zipinstall:
-	$(MAKE) -C fpasync zipinstall
-fpasync_zipsourceinstall:
-	$(MAKE) -C fpasync zipsourceinstall
-fpasync_zipexampleinstall:
-	$(MAKE) -C fpasync zipexampleinstall
-fpasync_zipdistinstall:
-	$(MAKE) -C fpasync zipdistinstall
-fpasync_clean:
-	$(MAKE) -C fpasync clean
-fpasync_distclean:
-	$(MAKE) -C fpasync distclean
-fpasync_cleanall:
-	$(MAKE) -C fpasync cleanall
-fpasync_info:
-	$(MAKE) -C fpasync info
-fpasync_makefiles:
-	$(MAKE) -C fpasync makefiles
-fpasync:
-	$(MAKE) -C fpasync all
-.PHONY: fpasync_all fpasync_debug fpasync_smart fpasync_release fpasync_examples fpasync_shared fpasync_install fpasync_sourceinstall fpasync_exampleinstall fpasync_distinstall fpasync_zipinstall fpasync_zipsourceinstall fpasync_zipexampleinstall fpasync_zipdistinstall fpasync_clean fpasync_distclean fpasync_cleanall fpasync_info fpasync_makefiles fpasync
-endif
-all: $(addsuffix _all,$(TARGET_DIRS))
-debug: $(addsuffix _debug,$(TARGET_DIRS))
-smart: $(addsuffix _smart,$(TARGET_DIRS))
-release: $(addsuffix _release,$(TARGET_DIRS))
-examples: $(addsuffix _examples,$(TARGET_DIRS))
-shared: $(addsuffix _shared,$(TARGET_DIRS))
-install: $(addsuffix _install,$(TARGET_DIRS))
-sourceinstall: $(addsuffix _sourceinstall,$(TARGET_DIRS))
-exampleinstall: $(addsuffix _exampleinstall,$(TARGET_DIRS))
-distinstall: $(addsuffix _distinstall,$(TARGET_DIRS))
-zipinstall: $(addsuffix _zipinstall,$(TARGET_DIRS))
-zipsourceinstall: $(addsuffix _zipsourceinstall,$(TARGET_DIRS))
-zipexampleinstall: $(addsuffix _zipexampleinstall,$(TARGET_DIRS))
-zipdistinstall: $(addsuffix _zipdistinstall,$(TARGET_DIRS))
-clean: $(addsuffix _clean,$(TARGET_DIRS))
-distclean: $(addsuffix _distclean,$(TARGET_DIRS))
-cleanall: $(addsuffix _cleanall,$(TARGET_DIRS))
-info: fpc_info
-makefiles: fpc_makefiles $(addsuffix _makefiles,$(TARGET_DIRS))
-.PHONY: all debug smart release examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefiles
-ifneq ($(wildcard fpcmake.loc),)
-include fpcmake.loc
-endif

+ 0 - 9
packages/asyncio/Makefile.fpc

@@ -1,9 +0,0 @@
-#
-#   Makefile.fpc for Free Pascal async I/O libraries
-#
-
-[target]
-dirs_linux=libasync fpasync
-dirs_freebsd=libasync fpasync
-#exampledirs_linux=tests
-#exampledirs_freebsd=tests

+ 0 - 1383
packages/asyncio/fpasync/Makefile

@@ -1,1383 +0,0 @@
-#
-# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/27]
-#
-default: all
-MAKEFILETARGETS=linux go32v2 win32 os2 freebsd beos netbsd amiga atari sunos qnx
-override PATH:=$(subst \,/,$(PATH))
-ifeq ($(findstring ;,$(PATH)),)
-inUnix=1
-SEARCHPATH:=$(filter-out .,$(subst :, ,$(PATH)))
-else
-SEARCHPATH:=$(subst ;, ,$(PATH))
-endif
-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 cygwin,$(MACHTYPE)),)
-inCygWin=1
-endif
-endif
-ifeq ($(OS_TARGET),freebsd)
-BSDhier=1
-endif
-ifeq ($(OS_TARGET),netbsd)
-BSDhier=1
-endif
-ifdef inUnix
-BATCHEXT=.sh
-else
-ifdef inOS2
-BATCHEXT=.cmd
-else
-BATCHEXT=.bat
-endif
-endif
-ifdef inUnix
-PATHSEP=/
-else
-PATHSEP:=$(subst /,\,/)
-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
-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=ppc386
-endif
-else
-override FPC=ppc386
-endif
-endif
-override FPC:=$(subst $(SRCEXEEXT),,$(FPC))
-override FPC:=$(subst \,/,$(FPC))$(SRCEXEEXT)
-ifndef FPC_VERSION
-FPC_VERSION:=$(shell $(FPC) -iV)
-endif
-export FPC FPC_VERSION
-ifeq ($(findstring 1.0.,$(FPC_VERSION)),)
-COMPILERINFO:=$(shell $(FPC) -iSP -iTP -iSO -iTO)
-ifndef CPU_SOURCE
-CPU_SOURCE:=$(word 1,$(COMPILERINFO))
-endif
-ifndef CPU_TARGET
-CPU_TARGET:=$(word 2,$(COMPILERINFO))
-endif
-ifndef OS_SOURCE
-OS_SOURCE:=$(word 3,$(COMPILERINFO))
-endif
-ifndef OS_TARGET
-OS_TARGET:=$(word 4,$(COMPILERINFO))
-endif
-else
-ifndef CPU_SOURCE
-CPU_SOURCE:=$(shell $(FPC) -iSP)
-endif
-ifndef CPU_TARGET
-CPU_TARGET:=$(shell $(FPC) -iTP)
-endif
-ifndef OS_SOURCE
-OS_SOURCE:=$(shell $(FPC) -iSO)
-endif
-ifndef OS_TARGET
-OS_TARGET:=$(shell $(FPC) -iTO)
-endif
-endif
-FULL_TARGET=$(CPU_TARGET)-$(OS_TARGET)
-FULL_SOURCE=$(CPU_SOURCE)-$(OS_SOURCE)
-ifneq ($(FULL_TARGET),$(FULL_SOURCE))
-CROSSCOMPILE=1
-endif
-ifeq ($(findstring makefile,$(MAKECMDGOALS)),)
-ifeq ($(findstring $(OS_TARGET),$(MAKEFILETARGETS)),)
-$(error The Makefile doesn't support target $(OS_TARGET), please run fpcmake first)
-endif
-endif
-export OS_TARGET OS_SOURCE CPU_TARGET CPU_SOURCE FULL_TARGET FULL_SOURCE 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=c:/pp
-endif
-endif
-endif
-endif
-ifndef CROSSDIR
-CROSSDIR:=$(FPCDIR)/cross/$(FULL_TARGET)
-endif
-ifndef CROSSTARGETDIR
-CROSSTARGETDIR=$(CROSSDIR)/$(FULL_TARGET)
-endif
-ifdef CROSSCOMPILE
-UNITSDIR:=$(wildcard $(CROSSTARGETDIR)/units)
-ifeq ($(UNITSDIR),)
-UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
-endif
-else
-UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
-endif
-PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages)
-override PACKAGE_NAME=fpasync
-override PACKAGE_VERSION=1.0.5
-override TARGET_UNITS+=fpasync
-override INSTALL_FPCPACKAGE=y
-override INSTALL_CREATEPACKAGEFPC=y
-override COMPILER_UNITDIR+=../libasync
-ifeq ($(OS_TARGET),linux)
-override COMPILER_SOURCEDIR+=unix
-endif
-ifeq ($(OS_TARGET),freebsd)
-override COMPILER_SOURCEDIR+=unix
-endif
-override COMPILER_TARGETDIR+=.
-ifdef REQUIRE_UNITSDIR
-override UNITSDIR+=$(REQUIRE_UNITSDIR)
-endif
-ifdef REQUIRE_PACKAGESDIR
-override PACKAGESDIR+=$(REQUIRE_PACKAGESDIR)
-endif
-ifdef ZIPINSTALL
-ifeq ($(OS_TARGET),linux)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_TARGET),freebsd)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_TARGET),netbsd)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_TARGET),sunos)
-UNIXINSTALLDIR=1
-endif
-else
-ifeq ($(OS_SOURCE),linux)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_SOURCE),freebsd)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_SOURCE),netbsd)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_TARGET),sunos)
-UNIXINSTALLDIR=1
-endif
-endif
-ifndef INSTALL_PREFIX
-ifdef PREFIX
-INSTALL_PREFIX=$(PREFIX)
-endif
-endif
-ifndef INSTALL_PREFIX
-ifdef UNIXINSTALLDIR
-INSTALL_PREFIX=/usr/local
-else
-ifdef INSTALL_FPCPACKAGE
-INSTALL_BASEDIR:=/pp
-else
-INSTALL_BASEDIR:=/$(PACKAGE_NAME)
-endif
-endif
-endif
-export INSTALL_PREFIX
-ifndef DIST_DESTDIR
-DIST_DESTDIR:=$(BASEDIR)
-endif
-export DIST_DESTDIR
-ifndef INSTALL_BASEDIR
-ifdef UNIXINSTALLDIR
-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 UNIXINSTALLDIR
-INSTALL_BINDIR:=$(INSTALL_PREFIX)/bin
-else
-INSTALL_BINDIR:=$(INSTALL_BASEDIR)/bin
-ifdef INSTALL_FPCPACKAGE
-INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(OS_TARGET)
-endif
-endif
-endif
-ifndef INSTALL_UNITDIR
-ifdef CROSSCOMPILE
-INSTALL_UNITDIR:=$(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/units
-else
-INSTALL_UNITDIR:=$(INSTALL_BASEDIR)/units/$(OS_TARGET)
-endif
-ifdef INSTALL_FPCPACKAGE
-ifdef PACKAGE_NAME
-INSTALL_UNITDIR:=$(INSTALL_UNITDIR)/$(PACKAGE_NAME)
-endif
-endif
-endif
-ifndef INSTALL_LIBDIR
-ifdef UNIXINSTALLDIR
-INSTALL_LIBDIR:=$(INSTALL_PREFIX)/lib
-else
-INSTALL_LIBDIR:=$(INSTALL_UNITDIR)
-endif
-endif
-ifndef INSTALL_SOURCEDIR
-ifdef UNIXINSTALLDIR
-ifdef INSTALL_FPCPACKAGE
-ifdef BSDhier
-INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/share/src/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-else
-INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/src/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-endif
-else
-ifdef BSDhier
-INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/share/src/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-else
-INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/src/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-endif
-endif
-else
-ifdef INSTALL_FPCPACKAGE
-INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source/$(PACKAGE_NAME)
-else
-INSTALL_SOURCEDIRL:=$(INSTALL_BASEDIR)/source
-endif
-endif
-endif
-ifndef INSTALL_DOCDIR
-ifdef UNIXINSTALLDIR
-ifdef INSTALL_FPCPACKAGE
-ifdef BSDhier
-INSTALL_DOCDIR:=$(INSTALL_PREFIX)/share/doc/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-else
-INSTALL_DOCDIR:=$(INSTALL_PREFIX)/doc/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-endif
-else
-ifdef BSDhier
-INSTALL_DOCDIR:=$(INSTALL_PREFIX)/share/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-else
-INSTALL_DOCDIR:=$(INSTALL_PREFIX)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-endif
-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 UNIXINSTALLDIR
-ifdef INSTALL_FPCPACKAGE
-ifdef BSDhier
-INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-else
-INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/fpc-$(FPC_VERSION)/examples/$(PACKAGE_NAME)
-endif
-else
-ifdef BSDhier
-INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-else
-INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-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
-ifdef CROSSCOMPILE
-ifndef CROSSBINDIR
-CROSSBINDIR:=$(wildcard $(CROSSTARGETDIR)/bin/$(FULL_SOURCE))
-ifeq ($(CROSSBINDIR),)
-CROSSBINDIR:=$(wildcard $(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/bin/$(FULL_SOURCE))
-endif
-endif
-else
-CROSSBINDIR=
-endif
-ifdef inUnix
-ifndef GCCLIBDIR
-GCCLIBDIR:=$(shell dirname `(gcc -v 2>&1)| head -n 1| awk '{ print $$4 } '`)
-endif
-ifeq ($(OS_TARGET),linux)
-ifndef OTHERLIBDIR
-OTHERLIBDIR:=$(shell grep -v "^\#" /etc/ld.so.conf | awk '{ ORS=" "; print $1 }')
-endif
-endif
-ifeq ($(OS_TARGET),netbsd)
-OTHERLIBDIR+=/usr/pkg/lib
-endif
-export GCCLIBDIR OTHERLIB
-endif
-LOADEREXT=.as
-EXEEXT=.exe
-PPLEXT=.ppl
-PPUEXT=.ppu
-OEXT=.o
-ASMEXT=.s
-SMARTEXT=.sl
-STATICLIBEXT=.a
-SHAREDLIBEXT=.so
-STATICLIBPREFIX=libp
-RSTEXT=.rst
-FPCMADE=fpcmade
-ifeq ($(OS_TARGET),go32v1)
-PPUEXT=.pp1
-OEXT=.o1
-ASMEXT=.s1
-SMARTEXT=.sl1
-STATICLIBEXT=.a1
-SHAREDLIBEXT=.so1
-STATICLIBPREFIX=
-FPCMADE=fpcmade.v1
-PACKAGESUFFIX=v1
-endif
-ifeq ($(OS_TARGET),go32v2)
-STATICLIBPREFIX=
-FPCMADE=fpcmade.dos
-ZIPSUFFIX=go32
-endif
-ifeq ($(OS_TARGET),linux)
-EXEEXT=
-HASSHAREDLIB=1
-FPCMADE=fpcmade.lnx
-ZIPSUFFIX=linux
-endif
-ifeq ($(OS_TARGET),freebsd)
-EXEEXT=
-HASSHAREDLIB=1
-FPCMADE=fpcmade.freebsd
-ZIPSUFFIX=freebsd
-endif
-ifeq ($(OS_TARGET),netbsd)
-EXEEXT=
-HASSHAREDLIB=1
-FPCMADE=fpcmade.netbsd
-ZIPSUFFIX=netbsd
-endif
-ifeq ($(OS_TARGET),win32)
-PPUEXT=.ppw
-OEXT=.ow
-ASMEXT=.sw
-SMARTEXT=.slw
-STATICLIBEXT=.aw
-SHAREDLIBEXT=.dll
-FPCMADE=fpcmade.w32
-ZIPSUFFIX=w32
-endif
-ifeq ($(OS_TARGET),os2)
-PPUEXT=.ppo
-ASMEXT=.so2
-OEXT=.oo2
-AOUTEXT=.out
-SMARTEXT=.so
-STATICLIBEXT=.ao2
-SHAREDLIBEXT=.dll
-FPCMADE=fpcmade.os2
-ZIPSUFFIX=emx
-endif
-ifeq ($(OS_TARGET),amiga)
-EXEEXT=
-PPUEXT=.ppa
-ASMEXT=.asm
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-SHAREDLIBEXT=.library
-FPCMADE=fpcmade.amg
-endif
-ifeq ($(OS_TARGET),atari)
-PPUEXT=.ppt
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=.ttp
-FPCMADE=fpcmade.ata
-endif
-ifeq ($(OS_TARGET),beos)
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=
-FPCMADE=fpcmade.be
-ZIPSUFFIX=be
-endif
-ifeq ($(OS_TARGET),sunos)
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=
-FPCMADE=fpcmade.sun
-ZIPSUFFIX=sun
-endif
-ifeq ($(OS_TARGET),qnx)
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=
-FPCMADE=fpcmade.qnx
-ZIPSUFFIX=qnx
-endif
-ifndef ECHO
-ECHO:=$(strip $(wildcard $(addsuffix /gecho$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(ECHO),)
-ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(ECHO),)
-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=
-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=
-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=
-else
-CPPROG:=$(firstword $(CPPROG))
-endif
-endif
-export CPPROG
-ifndef RMPROG
-RMPROG:=$(strip $(wildcard $(addsuffix /rm$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(RMPROG),)
-RMPROG=
-else
-RMPROG:=$(firstword $(RMPROG))
-endif
-endif
-export RMPROG
-ifndef MVPROG
-MVPROG:=$(strip $(wildcard $(addsuffix /mv$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(MVPROG),)
-MVPROG=
-else
-MVPROG:=$(firstword $(MVPROG))
-endif
-endif
-export MVPROG
-ifndef ECHOREDIR
-ECHOREDIR:=$(subst /,$(PATHSEP),$(ECHO))
-endif
-ifndef COPY
-COPY:=$(CPPROG) -fp
-endif
-ifndef COPYTREE
-COPYTREE:=$(CPPROG) -rfp
-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=
-else
-PPUMOVE:=$(firstword $(PPUMOVE))
-endif
-endif
-export PPUMOVE
-ifndef FPCMAKE
-FPCMAKE:=$(strip $(wildcard $(addsuffix /fpcmake$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(FPCMAKE),)
-FPCMAKE=
-else
-FPCMAKE:=$(firstword $(FPCMAKE))
-endif
-endif
-export FPCMAKE
-ifndef ZIPPROG
-ZIPPROG:=$(strip $(wildcard $(addsuffix /zip$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(ZIPPROG),)
-ZIPPROG=
-else
-ZIPPROG:=$(firstword $(ZIPPROG))
-endif
-endif
-export ZIPPROG
-ifndef TARPROG
-TARPROG:=$(strip $(wildcard $(addsuffix /tar$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(TARPROG),)
-TARPROG=
-else
-TARPROG:=$(firstword $(TARPROG))
-endif
-endif
-export TARPROG
-ASNAME=as
-LDNAME=ld
-ARNAME=ar
-RCNAME=rc
-ifeq ($(OS_TARGET),win32)
-ASNAME=asw
-LDNAME=ldw
-ARNAME=arw
-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$(BATCHEXT)
-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=vI
-TAREXT=.tar.bz2
-else
-TAROPT=vz
-TAREXT=.tar.gz
-endif
-override REQUIRE_PACKAGES=rtl rtl fcl
-ifeq ($(OS_TARGET),linux)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_PASZLIB=1
-REQUIRE_PACKAGES_INET=1
-REQUIRE_PACKAGES_FCL=1
-REQUIRE_PACKAGES_MYSQL=1
-REQUIRE_PACKAGES_IBASE=1
-endif
-ifeq ($(OS_TARGET),go32v2)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_PASZLIB=1
-REQUIRE_PACKAGES_FCL=1
-endif
-ifeq ($(OS_TARGET),win32)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_PASZLIB=1
-REQUIRE_PACKAGES_FCL=1
-REQUIRE_PACKAGES_MYSQL=1
-REQUIRE_PACKAGES_IBASE=1
-endif
-ifeq ($(OS_TARGET),os2)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_PASZLIB=1
-REQUIRE_PACKAGES_FCL=1
-endif
-ifeq ($(OS_TARGET),freebsd)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_PASZLIB=1
-REQUIRE_PACKAGES_INET=1
-REQUIRE_PACKAGES_FCL=1
-REQUIRE_PACKAGES_MYSQL=1
-REQUIRE_PACKAGES_IBASE=1
-endif
-ifeq ($(OS_TARGET),beos)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_PASZLIB=1
-REQUIRE_PACKAGES_FCL=1
-endif
-ifeq ($(OS_TARGET),netbsd)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_PASZLIB=1
-REQUIRE_PACKAGES_INET=1
-REQUIRE_PACKAGES_FCL=1
-endif
-ifeq ($(OS_TARGET),amiga)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_PASZLIB=1
-REQUIRE_PACKAGES_FCL=1
-endif
-ifeq ($(OS_TARGET),atari)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_PASZLIB=1
-REQUIRE_PACKAGES_FCL=1
-endif
-ifeq ($(OS_TARGET),sunos)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_PASZLIB=1
-REQUIRE_PACKAGES_FCL=1
-endif
-ifeq ($(OS_TARGET),qnx)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_PASZLIB=1
-REQUIRE_PACKAGES_FCL=1
-endif
-ifdef REQUIRE_PACKAGES_RTL
-PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
-ifneq ($(PACKAGEDIR_RTL),)
-ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
-UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
-else
-UNITDIR_RTL=$(PACKAGEDIR_RTL)
-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_PASZLIB
-PACKAGEDIR_PASZLIB:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /paszlib/Makefile.fpc,$(PACKAGESDIR))))))
-ifneq ($(PACKAGEDIR_PASZLIB),)
-ifneq ($(wildcard $(PACKAGEDIR_PASZLIB)/$(OS_TARGET)),)
-UNITDIR_PASZLIB=$(PACKAGEDIR_PASZLIB)/$(OS_TARGET)
-else
-UNITDIR_PASZLIB=$(PACKAGEDIR_PASZLIB)
-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_INET
-PACKAGEDIR_INET:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /inet/Makefile.fpc,$(PACKAGESDIR))))))
-ifneq ($(PACKAGEDIR_INET),)
-ifneq ($(wildcard $(PACKAGEDIR_INET)/$(OS_TARGET)),)
-UNITDIR_INET=$(PACKAGEDIR_INET)/$(OS_TARGET)
-else
-UNITDIR_INET=$(PACKAGEDIR_INET)
-endif
-else
-PACKAGEDIR_INET=
-UNITDIR_INET:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /inet/Package.fpc,$(UNITSDIR)))))
-ifneq ($(UNITDIR_INET),)
-UNITDIR_INET:=$(firstword $(UNITDIR_INET))
-else
-UNITDIR_INET=
-endif
-endif
-ifdef UNITDIR_INET
-override COMPILER_UNITDIR+=$(UNITDIR_INET)
-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)/$(OS_TARGET)),)
-UNITDIR_FCL=$(PACKAGEDIR_FCL)/$(OS_TARGET)
-else
-UNITDIR_FCL=$(PACKAGEDIR_FCL)
-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_MYSQL
-PACKAGEDIR_MYSQL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /mysql/Makefile.fpc,$(PACKAGESDIR))))))
-ifneq ($(PACKAGEDIR_MYSQL),)
-ifneq ($(wildcard $(PACKAGEDIR_MYSQL)/$(OS_TARGET)),)
-UNITDIR_MYSQL=$(PACKAGEDIR_MYSQL)/$(OS_TARGET)
-else
-UNITDIR_MYSQL=$(PACKAGEDIR_MYSQL)
-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_IBASE
-PACKAGEDIR_IBASE:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /ibase/Makefile.fpc,$(PACKAGESDIR))))))
-ifneq ($(PACKAGEDIR_IBASE),)
-ifneq ($(wildcard $(PACKAGEDIR_IBASE)/$(OS_TARGET)),)
-UNITDIR_IBASE=$(PACKAGEDIR_IBASE)/$(OS_TARGET)
-else
-UNITDIR_IBASE=$(PACKAGEDIR_IBASE)
-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
-ifndef NOCPUDEF
-override FPCOPTDEF=$(CPU_TARGET)
-endif
-ifneq ($(OS_TARGET),$(OS_SOURCE))
-override FPCOPT+=-T$(OS_TARGET)
-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
-ifeq ($(CPU_TARGET),i386)
-FPCCPUOPT:=-OG2p3
-else
-FPCCPUOPT:=
-endif
-override FPCOPT+=-Xs $(FPCCPUOPT) -n
-override FPCOPTDEF+=RELEASE
-endif
-ifdef STRIP
-override FPCOPT+=-Xs
-endif
-ifdef OPTIMIZE
-ifeq ($(CPU_TARGET),i386)
-override FPCOPT+=-OG2p3
-endif
-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 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 COMPILER:=$(FPC) $(FPCOPT)
-ifeq (,$(findstring -s ,$(COMPILER)))
-EXECPPAS=
-else
-ifeq ($(OS_SOURCE),$(OS_TARGET))
-EXECPPAS:=@$(PPAS)
-endif
-endif
-.PHONY: fpc_units
-ifdef 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: $(UNITPPUFILES)
-ifdef TARGET_RSTS
-override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS))
-override CLEANRSTFILES+=$(RSTFILES)
-endif
-.PHONY: fpc_all fpc_smart fpc_debug fpc_release
-$(FPCMADE): $(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 .pp .rc .res
-%$(PPUEXT): %.pp
-	$(COMPILER) $<
-	$(EXECPPAS)
-%$(PPUEXT): %.pas
-	$(COMPILER) $<
-	$(EXECPPAS)
-%$(EXEEXT): %.pp
-	$(COMPILER) $<
-	$(EXECPPAS)
-%$(EXEEXT): %.pas
-	$(COMPILER) $<
-	$(EXECPPAS)
-%.res: %.rc
-	windres -i $< -o $@
-vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
-vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
-vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
-.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),$(INSTALLPPUFILES))
-endif
-ifdef INSTALLPPUFILES
-override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
-override INSTALLPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPUFILES))
-override INSTALLPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPULINKFILES)))
-override INSTALL_CREATEPACKAGEFPC=1
-endif
-ifdef INSTALLEXEFILES
-override INSTALLEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(INSTALLEXEFILES))
-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$(OS_TARGET) Makefile.fpc
-	$(MKDIR) $(INSTALL_UNITDIR)
-	$(INSTALL) Package.fpc $(INSTALL_UNITDIR)
-endif
-endif
-endif
-endif
-ifdef INSTALLPPUFILES
-	$(MKDIR) $(INSTALL_UNITDIR)
-	$(INSTALL) $(INSTALLPPUFILES) $(INSTALL_UNITDIR)
-ifneq ($(INSTALLPPULINKFILES),)
-	$(INSTALL) $(INSTALLPPULINKFILES) $(INSTALL_UNITDIR)
-endif
-ifneq ($(wildcard $(LIB_FULLNAME)),)
-	$(MKDIR) $(INSTALL_LIBDIR)
-	$(INSTALL) $(LIB_FULLNAME) $(INSTALL_LIBDIR)
-ifdef inUnix
-	ln -sf $(LIB_FULLNAME) $(INSTALL_LIBDIR)/$(LIB_NAME)
-endif
-endif
-endif
-ifdef INSTALL_FILES
-	$(MKDIR) $(INSTALL_DATADIR)
-	$(INSTALL) $(INSTALL_FILES) $(INSTALL_DATADIR)
-endif
-fpc_sourceinstall: distclean
-	$(MKDIR) $(INSTALL_SOURCEDIR)
-	$(COPYTREE) $(BASEDIR) $(INSTALL_SOURCEDIR)
-fpc_exampleinstall: $(addsuffix _distclean,$(TARGET_EXAMPLEDIRS))
-ifdef HASEXAMPLES
-	$(MKDIR) $(INSTALL_EXAMPLEDIR)
-endif
-ifdef EXAMPLESOURCEFILES
-	$(COPY) $(EXAMPLESOURCEFILES) $(INSTALL_EXAMPLEDIR)
-endif
-ifdef TARGET_EXAMPLEDIRS
-	$(COPYTREE) $(addsuffix /*,$(TARGET_EXAMPLEDIRS)) $(INSTALL_EXAMPLEDIR)
-endif
-.PHONY: fpc_distinstall
-fpc_distinstall: install exampleinstall
-.PHONY: fpc_zipinstall fpc_zipsourceinstall fpc_zipexampleinstall
-ifndef PACKDIR
-ifndef inUnix
-PACKDIR=$(BASEDIR)/../fpc-pack
-else
-PACKDIR=/tmp/fpc-pack
-endif
-endif
-ifndef ZIPNAME
-ifdef DIST_ZIPNAME
-ZIPNAME=$(DIST_ZIPNAME)
-else
-ZIPNAME=$(ZIPPREFIX)$(PACKAGE_NAME)$(ZIPSUFFIX)
-endif
-endif
-ifndef ZIPTARGET
-ifdef DIST_ZIPTARGET
-ZIPTARGET=DIST_ZIPTARGET
-else
-ZIPTARGET=install
-endif
-endif
-ifndef USEZIP
-ifdef inUnix
-USETAR=1
-endif
-endif
-ifndef inUnix
-USEZIPWRAPPER=1
-endif
-ifdef USEZIPWRAPPER
-ZIPPATHSEP=$(PATHSEP)
-ZIPWRAPPER=$(subst /,$(PATHSEP),$(DIST_DESTDIR)/fpczip$(BATCHEXT))
-else
-ZIPPATHSEP=/
-endif
-ZIPCMD_CDPACK:=cd $(subst /,$(ZIPPATHSEP),$(PACKDIR))
-ZIPCMD_CDBASE:=cd $(subst /,$(ZIPPATHSEP),$(BASEDIR))
-ifdef USETAR
-ZIPDESTFILE:=$(DIST_DESTDIR)/$(ZIPNAME)$(TAREXT)
-ZIPCMD_ZIP:=$(TARPROG) cf$(TAROPT) $(ZIPDESTFILE) *
-else
-ZIPDESTFILE:=$(DIST_DESTDIR)/$(ZIPNAME)$(ZIPEXT)
-ZIPCMD_ZIP:=$(subst /,$(ZIPPATHSEP),$(ZIPPROG)) -Dr $(ZIPOPT) $(ZIPDESTFILE) *
-endif
-fpc_zipinstall:
-	$(MAKE) $(ZIPTARGET) INSTALL_PREFIX=$(PACKDIR) ZIPINSTALL=1
-	$(MKDIR) $(DIST_DESTDIR)
-	$(DEL) $(ZIPDESTFILE)
-ifdef USEZIPWRAPPER
-ifneq ($(ECHOREDIR),echo)
-	$(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_CDPACK))" > $(ZIPWRAPPER)
-	$(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_ZIP))" >> $(ZIPWRAPPER)
-	$(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_CDBASE))" >> $(ZIPWRAPPER)
-else
-	echo $(ZIPCMD_CDPACK) > $(ZIPWRAPPER)
-	echo $(ZIPCMD_ZIP) >> $(ZIPWRAPPER)
-	echo $(ZIPCMD_CDBASE) >> $(ZIPWRAPPER)
-endif
-ifdef inUnix
-	/bin/sh $(ZIPWRAPPER)
-else
-	$(ZIPWRAPPER)
-endif
-	$(DEL) $(ZIPWRAPPER)
-else
-	$(ZIPCMD_CDPACK) ; $(ZIPCMD_ZIP) ; $(ZIPCMD_CDBASE)
-endif
-	$(DELTREE) $(PACKDIR)
-fpc_zipsourceinstall:
-	$(MAKE) fpc_zipinstall ZIPTARGET=sourceinstall ZIPSUFFIX=src
-fpc_zipexampleinstall:
-ifdef HASEXAMPLES
-	$(MAKE) fpc_zipinstall ZIPTARGET=exampleinstall ZIPSUFFIX=exm
-endif
-fpc_zipdistinstall:
-	$(MAKE) fpc_zipinstall ZIPTARGET=distinstall
-.PHONY: fpc_clean fpc_cleanall fpc_distclean
-ifdef EXEFILES
-override CLEANEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(CLEANEXEFILES))
-endif
-ifdef CLEAN_UNITS
-override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
-endif
-ifdef CLEANPPUFILES
-override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
-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)
-fpc_distclean: clean
-ifdef COMPILER_UNITTARGETDIR
-TARGETDIRCLEAN=fpc_clean
-endif
-fpc_cleanall: $(CLEANTARGET) $(TARGETDIRCLEAN)
-ifdef CLEANEXEFILES
-	-$(DEL) $(CLEANEXEFILES)
-endif
-	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
-	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
-ifdef AOUTEXT
-	-$(DEL) *$(AOUTEXT)
-endif
-.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 Target.. $(FULL_SOURCE)
-	@$(ECHO)  Full Source.. $(FULL_TARGET)
-	@$(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)  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)  ZipPrefix............ $(ZIPPREFIX)
-	@$(ECHO)  ZipSuffix............ $(ZIPSUFFIX)
-	@$(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
-examples:
-shared:
-install: fpc_install
-sourceinstall: fpc_sourceinstall
-exampleinstall: fpc_exampleinstall
-distinstall: fpc_distinstall
-zipinstall: fpc_zipinstall
-zipsourceinstall: fpc_zipsourceinstall
-zipexampleinstall: fpc_zipexampleinstall
-zipdistinstall: fpc_zipdistinstall
-clean: fpc_clean
-distclean: fpc_distclean
-cleanall: fpc_cleanall
-info: fpc_info
-makefiles: fpc_makefiles
-.PHONY: all debug smart release examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefiles
-ifneq ($(wildcard fpcmake.loc),)
-include fpcmake.loc
-endif

+ 0 - 26
packages/asyncio/fpasync/Makefile.fpc

@@ -1,26 +0,0 @@
-#
-#   Makefile.fpc for fpAsync
-#
-
-[package]
-name=fpasync
-version=1.0.5
-
-[target]
-units=fpasync
-
-[require]
-packages=rtl fcl
-
-[install]
-fpcpackage=y
-createpackagefpc=y
-
-[compiler]
-unitdir=../libasync
-sourcedir_linux=unix
-sourcedir_freebsd=unix
-targetdir=.
-
-[default]
-fpcdir=../../..

+ 0 - 419
packages/asyncio/fpasync/fpasync.inc

@@ -1,419 +0,0 @@
-{
-    $Id$
-
-    fpAsync: Asynchronous event management for Free Pascal
-    Copyright (C) 2001 by
-      Areca Systems GmbH / Sebastian Guenther, [email protected]
-
-    Common implementation
-
-    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.
-}
-
-
-type
-  PNotifyData = ^TNotifyData;
-  TNotifyData = record
-    Next: PNotifyData;
-    Notify: TNotifyEvent;
-    Sender: TObject;
-    case Boolean of
-      False: (TimerHandle: TAsyncTimer);
-      True: (FileHandle: LongInt);
-  end;
-
-
-procedure EventHandler(Data: Pointer); cdecl;
-begin
-  with PNotifyData(Data)^ do
-    Notify(Sender);
-end;
-
-
-function AddNotifyData(Obj: TEventLoop): PNotifyData;
-begin
-  New(Result);
-  Result^.Next := PNotifyData(Obj.FFirstNotifyData);
-  Obj.FFirstNotifyData := Result;
-end;
-
-procedure FreeNotifyData(Obj: TEventLoop; Data: PNotifyData);
-var
-  CurData, PrevData, NextData: PNotifyData;
-begin
-  PrevData := nil;
-  CurData := Obj.FFirstNotifyData;
-  while Assigned(CurData) do
-  begin
-    NextData := CurData^.Next;
-    if CurData = Data then
-      if Assigned(PrevData) then
-        PrevData^.Next := NextData
-      else
-        Obj.FFirstNotifyData := NextData;
-    PrevData := CurData;
-    CurData := NextData;
-  end;
-
-  Dispose(Data);
-end;
-
-
-
-constructor TEventLoop.Create;
-begin
-  asyncInit(Handle);
-end;
-
-destructor TEventLoop.Destroy;
-var
-  NotifyData, NextNotifyData: PNotifyData;
-begin
-  asyncFree(Handle);
-  NotifyData := FFirstNotifyData;
-  while Assigned(NotifyData) do
-  begin
-    NextNotifyData := NotifyData^.Next;
-    Dispose(NotifyData);
-    NotifyData := NextNotifyData;
-  end;
-end;
-
-function TEventLoop.Handle: TAsyncHandle;
-begin
-  Result := TAsyncHandle(Self);
-end;
-
-procedure TEventLoop.Run;
-begin
-  asyncRun(Handle);
-end;
-
-procedure TEventLoop.Break;
-begin
-  asyncBreak(Handle);
-end;
-
-function TEventLoop.AddTimerCallback(AMSec: LongInt; APeriodic: Boolean;
-  ACallback: TAsyncCallback; AUserData: Pointer): TAsyncTimer;
-begin
-  Result := asyncAddTimer(Handle, AMSec, APeriodic, ACallback, AUserData);
-end;
-
-procedure TEventLoop.RemoveTimerCallback(ATimer: TAsyncTimer);
-begin
-  asyncRemoveTimer(Handle, ATimer);
-end;
-
-function TEventLoop.AddTimerNotify(AMSec: LongInt; APeriodic: Boolean;
-  ANotify: TNotifyEvent; ASender: TObject): Pointer;
-var
-  UserData: PNotifyData;
-begin
-  UserData := AddNotifyData(Self);
-  UserData^.Notify := ANotify;
-  UserData^.Sender := ASender;
-  UserData^.TimerHandle :=
-    asyncAddTimer(Handle, AMSec, APeriodic, @EventHandler, UserData);
-  Result := UserData;
-end;
-
-procedure TEventLoop.RemoveTimerNotify(AHandle: Pointer);
-var
-  Data: PNotifyData;
-begin
-  Data := PNotifyData(AHandle);
-  asyncRemoveTimer(Handle, Data^.TimerHandle);
-  FreeNotifyData(Self, Data);
-end;
-
-procedure TEventLoop.SetIOCallback(AHandle: Integer; ACallback: TAsyncCallback;
-  AUserData: Pointer);
-begin
-  asyncSetIOCallback(Handle, AHandle, ACallback, AUserData);
-end;
-
-procedure TEventLoop.ClearIOCallback(AHandle: Integer);
-begin
-  asyncClearIOCallback(Handle, AHandle);
-end;
-
-function TEventLoop.SetIONotify(AHandle: Integer; ANotify: TNotifyEvent;
-  ASender: TObject): Pointer;
-var
-  UserData: PNotifyData;
-begin
-  UserData := AddNotifyData(Self);
-  UserData^.Notify := ANotify;
-  UserData^.Sender := ASender;
-  UserData^.FileHandle := AHandle;
-  asyncSetIOCallback(Handle, AHandle, @EventHandler, UserData);
-  Result := UserData;
-end;
-
-procedure TEventLoop.ClearIONotify(AHandle: Pointer);
-var
-  Data: PNotifyData;
-begin
-  Data := PNotifyData(AHandle);
-  asyncClearIOCallback(Handle, Data^.FileHandle);
-  FreeNotifyData(Self, Data);
-end;
-
-procedure TEventLoop.SetDataAvailableCallback(AHandle: Integer; ACallback: TAsyncCallback;
-  AUserData: Pointer);
-begin
-  asyncSetDataAvailableCallback(Handle, AHandle, ACallback, AUserData);
-end;
-
-procedure TEventLoop.ClearDataAvailableCallback(AHandle: Integer);
-begin
-  asyncClearDataAvailableCallback(Handle, AHandle);
-end;
-
-function TEventLoop.SetDataAvailableNotify(AHandle: Integer; ANotify: TNotifyEvent;
-  ASender: TObject): Pointer;
-var
-  UserData: PNotifyData;
-begin
-  UserData := AddNotifyData(Self);
-  UserData^.Notify := ANotify;
-  UserData^.Sender := ASender;
-  UserData^.FileHandle := AHandle;
-  asyncSetDataAvailableCallback(Handle, AHandle, @EventHandler, UserData);
-  Result := UserData;
-end;
-
-procedure TEventLoop.ClearDataAvailableNotify(AHandle: Pointer);
-var
-  Data: PNotifyData;
-begin
-  Data := PNotifyData(AHandle);
-  asyncClearDataAvailableCallback(Handle, Data^.FileHandle);
-  FreeNotifyData(Self, Data);
-end;
-
-procedure TEventLoop.SetCanWriteCallback(AHandle: Integer; ACallback: TAsyncCallback;
-  AUserData: Pointer);
-begin
-  asyncSetCanWriteCallback(Handle, AHandle, ACallback, AUserData);
-end;
-
-procedure TEventLoop.ClearCanWriteCallback(AHandle: Integer);
-begin
-  asyncClearCanWriteCallback(Handle, AHandle);
-end;
-
-function TEventLoop.SetCanWriteNotify(AHandle: Integer; ANotify: TNotifyEvent;
-  ASender: TObject): Pointer;
-var
-  UserData: PNotifyData;
-begin
-  UserData := AddNotifyData(Self);
-  UserData^.Notify := ANotify;
-  UserData^.Sender := ASender;
-  UserData^.FileHandle := AHandle;
-  asyncSetCanWriteCallback(Handle, AHandle, @EventHandler, UserData);
-  Result := UserData;
-end;
-
-procedure TEventLoop.ClearCanWriteNotify(AHandle: Pointer);
-var
-  Data: PNotifyData;
-begin
-  Data := PNotifyData(AHandle);
-  asyncClearCanWriteCallback(Handle, Data^.FileHandle);
-  FreeNotifyData(Self, Data);
-end;
-
-function TEventLoop.TimerTicks: Int64;
-begin
-  Result := asyncGetTicks;
-end;
-
-function TEventLoop.GetIsRunning: Boolean;
-begin
-  Result := asyncIsRunning(Handle);
-end;
-
-procedure TEventLoop.SetIsRunning(AIsRunning: Boolean);
-begin
-  if IsRunning then
-  begin
-    if not AIsRunning then
-      Run;
-  end else
-    if AIsRunning then
-      Break;
-end;
-
-
-// -------------------------------------------------------------------
-//   TWriteBuffer
-// -------------------------------------------------------------------
-
-procedure TWriteBuffer.BufferEmpty;
-begin
-  if Assigned(FOnBufferEmpty) then
-    FOnBufferEmpty(Self);
-end;
-
-constructor TWriteBuffer.Create;
-begin
-  inherited Create;
-
-  FBuffer := nil;
-  FBytesInBuffer := 0;
-  EndOfLineMarker := #10;
-end;
-
-destructor TWriteBuffer.Destroy;
-begin
-  if Assigned(FBuffer) then
-    FreeMem(FBuffer);
-  inherited Destroy;
-end;
-
-function TWriteBuffer.Seek(Offset: LongInt; Origin: Word): LongInt;
-begin
-  if ((Offset = 0) and ((Origin = soFromCurrent) or (Origin = soFromEnd))) or
-     ((Offset = FBytesInBuffer) and (Origin = soFromBeginning)) then
-    Result := FBytesInBuffer
-  else
-    // !!!: No i18n for this string - solve this problem in the FCL?!?
-    raise EStreamError.Create('Invalid stream operation');
-end;
-
-function TWriteBuffer.Write(const ABuffer; Count: LongInt): LongInt;
-begin
-  ReallocMem(FBuffer, FBytesInBuffer + Count);
-  Move(ABuffer, FBuffer[FBytesInBuffer], Count);
-  Inc(FBytesInBuffer, Count);
-  WantWrite;
-  Result := Count;
-end;
-
-procedure TWriteBuffer.WriteLine(const line: String);
-var
-  s: String;
-begin
-  s := line + EndOfLineMarker;
-  WriteBuffer(s[1], Length(s));
-end;
-
-procedure TWriteBuffer.Run;
-var
-  CurStart, Written: Integer;
-  NewBuf: PChar;
-  Failed: Boolean;
-begin
-  CurStart := 0;
-  Failed := True;
-  repeat
-    if FBytesInBuffer = 0 then
-    begin
-      BufferEmpty;
-      exit;
-    end;
-
-    Written := DoRealWrite(FBuffer[CurStart], FBytesInBuffer - CurStart);
-    if Written > 0 then
-    begin
-      Inc(CurStart, Written);
-      Failed := False;
-      GetMem(NewBuf, FBytesInBuffer - CurStart);
-      Move(FBuffer[CurStart], NewBuf[0], FBytesInBuffer - CurStart);
-      FreeMem(FBuffer);
-      FBuffer := NewBuf;
-      Dec(FBytesInBuffer, CurStart);
-    end;
-  until Written <= 0;
-
-  if Failed then
-    WritingFailed;
-end;
-
-
-// -------------------------------------------------------------------
-//   TAsyncWriteStream
-// -------------------------------------------------------------------
-
-function TAsyncWriteStream.DoRealWrite(const ABuffer; Count: Integer): Integer;
-begin
-  Result := FDataStream.Write(ABuffer, count);
-end;
-
-procedure TAsyncWriteStream.WritingFailed;
-begin
-  if (FDataStream <> FBlockingStream) and Assigned(FNotifyHandle) then
-  begin
-    FManager.ClearCanWriteNotify(FNotifyHandle);
-    FNotifyHandle := nil;
-  end;
-end;
-
-procedure TAsyncWriteStream.WantWrite;
-begin
-  FNotifyHandle := FManager.SetCanWriteNotify(FBlockingStream.Handle, @CanWrite, nil);
-end;
-
-procedure TAsyncWriteStream.BufferEmpty;
-begin
-  if Assigned(FNotifyHandle) then
-  begin
-    FManager.ClearCanWriteNotify(FNotifyHandle);
-    FNotifyHandle := nil;
-  end;
-  inherited BufferEmpty;
-end;
-
-procedure TAsyncWriteStream.CanWrite(UserData: TObject);
-begin
-  Run;
-end;
-
-constructor TAsyncWriteStream.Create(AManager: TEventLoop; AStream: THandleStream);
-begin
-  Self.Create(AManager, AStream, AStream);
-end;
-
-constructor TAsyncWriteStream.Create(AManager: TEventLoop;
-  ADataStream: TStream; ABlockingStream: THandleStream);
-begin
-  ASSERT(Assigned(ADataStream) and Assigned(ABlockingStream));
-
-  inherited Create;
-  FManager := AManager;
-  FDataStream := ADataStream;
-  FBlockingStream := ABlockingStream;
-end;
-
-destructor TAsyncWriteStream.Destroy;
-begin
-  if Assigned(FNotifyHandle) then
-    FManager.ClearCanWriteNotify(FNotifyHandle);
-  inherited Destroy;
-end;
-
-
-{
-  $Log$
-  Revision 1.2  2001-12-11 17:45:28  marco
-   * was only commited to fixes.
-
-  Revision 1.1.2.2  2001/11/16 12:51:41  sg
-  * Now different handlers for available data and space in write buffer can
-    be set
-  * LOTS of bugfixes in the implementation
-  * fpAsync now has a write buffer class (a read buffer class for reading
-    line by line will be included in the next release)
-
-  Revision 1.1.2.1  2001/09/08 15:43:24  sg
-  * First public version
-
-}

+ 0 - 140
packages/asyncio/fpasync/fpasynch.inc

@@ -1,140 +0,0 @@
-{
-    $Id$
-
-    fpAsync: Asynchronous event management for Free Pascal
-    Copyright (C) 2001 by
-      Areca Systems GmbH / Sebastian Guenther, [email protected]
-
-    Common interface
-
-    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.
-}
-
-type
-
-  TEventLoop = class
-  private
-    FData: TAsyncData;
-    FFirstNotifyData: Pointer;
-    function GetIsRunning: Boolean;
-    procedure SetIsRunning(AIsRunning: Boolean);
-  public
-    constructor Create;
-    destructor Destroy; override;
-    function Handle: TAsyncHandle;
-
-    // Main loop control
-    procedure Run;
-    procedure Break;
-
-    // Timer support
-    function AddTimerCallback(AMSec: LongInt; APeriodic: Boolean;
-      ACallback: TAsyncCallback; AUserData: Pointer): TAsyncTimer;
-    procedure RemoveTimerCallback(ATimer: TAsyncTimer);
-    function AddTimerNotify(AMSec: LongInt; APeriodic: Boolean;
-      ANotify: TNotifyEvent; ASender: TObject): Pointer;
-    procedure RemoveTimerNotify(AHandle: Pointer);
-
-    // I/O notification support (for files, sockets etc.)
-    procedure SetIOCallback(AHandle: Integer; ACallback: TAsyncCallback;
-      AUserData: Pointer);
-    procedure ClearIOCallback(AHandle: Integer);
-    function SetIONotify(AHandle: Integer; ANotify: TNotifyEvent;
-      ASender: TObject): Pointer;
-    procedure ClearIONotify(AHandle: Pointer);
-
-    procedure SetDataAvailableCallback(AHandle: Integer;
-      ACallback: TAsyncCallback; AUserData: Pointer);
-    procedure ClearDataAvailableCallback(AHandle: Integer);
-    function SetDataAvailableNotify(AHandle: Integer; ANotify: TNotifyEvent;
-      ASender: TObject): Pointer;
-    procedure ClearDataAvailableNotify(AHandle: Pointer);
-
-    procedure SetCanWriteCallback(AHandle: Integer; ACallback: TAsyncCallback;
-      AUserData: Pointer);
-    procedure ClearCanWriteCallback(AHandle: Integer);
-    function SetCanWriteNotify(AHandle: Integer; ANotify: TNotifyEvent;
-      ASender: TObject): Pointer;
-    procedure ClearCanWriteNotify(AHandle: Pointer);
-
-
-    class function TimerTicks: Int64;
-
-    // Properties
-    property IsRunning: Boolean read GetIsRunning write SetIsRunning;
-  end;
-
-
-// -------------------------------------------------------------------
-//   Asynchronous write buffers
-// -------------------------------------------------------------------
-
-  TWriteBuffer = class(TStream)
-  protected
-    FBuffer: PChar;
-    FBytesInBuffer: Integer;
-    FOnBufferEmpty: TNotifyEvent;
-
-    function  Seek(Offset: LongInt; Origin: Word): LongInt; override;
-    function  Write(const ABuffer; Count: LongInt): LongInt; override;
-    function  DoRealWrite(const ABuffer; Count: Integer): Integer; virtual; abstract;
-    procedure WritingFailed; virtual; abstract;
-    procedure WantWrite; virtual; abstract;
-    procedure BufferEmpty; virtual;
-  public
-    EndOfLineMarker: String;
-
-    constructor Create;
-    destructor Destroy; override;
-    procedure WriteLine(const line: String);
-    procedure Run;		// Write as many data as possible
-
-    property BytesInBuffer: Integer read FBytesInBuffer;
-    property OnBufferEmpty: TNotifyEvent read FOnBufferEmpty write FOnBufferEmpty;
-  end;
-
-
-  TAsyncWriteStream = class(TWriteBuffer)
-  protected
-    FManager: TEventLoop;
-    FDataStream: TStream;
-    FBlockingStream: THandleStream;
-    FNotifyHandle: Pointer;
-
-    function  DoRealWrite(const ABuffer; Count: Integer): Integer; override;
-    procedure WritingFailed; override;
-    procedure WantWrite; override;
-    procedure BufferEmpty; override;
-    procedure CanWrite(UserData: TObject);
-  public
-    constructor Create(AManager: TEventLoop; AStream: THandleStream);
-    constructor Create(AManager: TEventLoop;
-      ADataStream: TStream; ABlockingStream: THandleStream);
-    destructor Destroy; override;
-
-    property DataStream: TStream read FDataStream;
-    property BlockingStream: THandleStream read FBlockingStream;
-  end;
-
-
-{
-  $Log$
-  Revision 1.2  2001-12-11 17:45:28  marco
-   * was only commited to fixes.
-
-  Revision 1.1.2.2  2001/11/16 12:51:41  sg
-  * Now different handlers for available data and space in write buffer can
-    be set
-  * LOTS of bugfixes in the implementation
-  * fpAsync now has a write buffer class (a read buffer class for reading
-    line by line will be included in the next release)
-
-  Revision 1.1.2.1  2001/09/08 15:43:24  sg
-  * First public version
-
-}

+ 0 - 57
packages/asyncio/fpasync/unix/fpasync.pp

@@ -1,57 +0,0 @@
-{
-    $Id$
-
-    fpAsync: Asynchronous event management for Free Pascal
-    Copyright (C) 2001 by
-      Areca Systems GmbH / Sebastian Guenther, [email protected]
-
-    Unix implementation
-
-    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 fpAsync;
-
-{$MODE objfpc}
-
-interface
-
-uses Classes, libasync;
-
-type
-
-  TNotifyEvent = procedure(Sender: TObject) of object;
-
-{$INCLUDE fpasynch.inc}
-
-
-implementation
-
-
-{$INCLUDE fpasync.inc}
-
-
-end.
-
-
-{
-  $Log$
-  Revision 1.2  2001-12-11 17:45:28  marco
-   * was only commited to fixes.
-
-  Revision 1.1.2.2  2001/11/16 12:51:41  sg
-  * Now different handlers for available data and space in write buffer can
-    be set
-  * LOTS of bugfixes in the implementation
-  * fpAsync now has a write buffer class (a read buffer class for reading
-    line by line will be included in the next release)
-
-  Revision 1.1.2.1  2001/09/08 15:43:24  sg
-  * First public version
-
-}

+ 0 - 1226
packages/asyncio/libasync/Makefile

@@ -1,1226 +0,0 @@
-#
-# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/27]
-#
-default: all
-MAKEFILETARGETS=linux go32v2 win32 os2 freebsd beos netbsd amiga atari sunos qnx
-override PATH:=$(subst \,/,$(PATH))
-ifeq ($(findstring ;,$(PATH)),)
-inUnix=1
-SEARCHPATH:=$(filter-out .,$(subst :, ,$(PATH)))
-else
-SEARCHPATH:=$(subst ;, ,$(PATH))
-endif
-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 cygwin,$(MACHTYPE)),)
-inCygWin=1
-endif
-endif
-ifeq ($(OS_TARGET),freebsd)
-BSDhier=1
-endif
-ifeq ($(OS_TARGET),netbsd)
-BSDhier=1
-endif
-ifdef inUnix
-BATCHEXT=.sh
-else
-ifdef inOS2
-BATCHEXT=.cmd
-else
-BATCHEXT=.bat
-endif
-endif
-ifdef inUnix
-PATHSEP=/
-else
-PATHSEP:=$(subst /,\,/)
-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
-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=ppc386
-endif
-else
-override FPC=ppc386
-endif
-endif
-override FPC:=$(subst $(SRCEXEEXT),,$(FPC))
-override FPC:=$(subst \,/,$(FPC))$(SRCEXEEXT)
-ifndef FPC_VERSION
-FPC_VERSION:=$(shell $(FPC) -iV)
-endif
-export FPC FPC_VERSION
-ifeq ($(findstring 1.0.,$(FPC_VERSION)),)
-COMPILERINFO:=$(shell $(FPC) -iSP -iTP -iSO -iTO)
-ifndef CPU_SOURCE
-CPU_SOURCE:=$(word 1,$(COMPILERINFO))
-endif
-ifndef CPU_TARGET
-CPU_TARGET:=$(word 2,$(COMPILERINFO))
-endif
-ifndef OS_SOURCE
-OS_SOURCE:=$(word 3,$(COMPILERINFO))
-endif
-ifndef OS_TARGET
-OS_TARGET:=$(word 4,$(COMPILERINFO))
-endif
-else
-ifndef CPU_SOURCE
-CPU_SOURCE:=$(shell $(FPC) -iSP)
-endif
-ifndef CPU_TARGET
-CPU_TARGET:=$(shell $(FPC) -iTP)
-endif
-ifndef OS_SOURCE
-OS_SOURCE:=$(shell $(FPC) -iSO)
-endif
-ifndef OS_TARGET
-OS_TARGET:=$(shell $(FPC) -iTO)
-endif
-endif
-FULL_TARGET=$(CPU_TARGET)-$(OS_TARGET)
-FULL_SOURCE=$(CPU_SOURCE)-$(OS_SOURCE)
-ifneq ($(FULL_TARGET),$(FULL_SOURCE))
-CROSSCOMPILE=1
-endif
-ifeq ($(findstring makefile,$(MAKECMDGOALS)),)
-ifeq ($(findstring $(OS_TARGET),$(MAKEFILETARGETS)),)
-$(error The Makefile doesn't support target $(OS_TARGET), please run fpcmake first)
-endif
-endif
-export OS_TARGET OS_SOURCE CPU_TARGET CPU_SOURCE FULL_TARGET FULL_SOURCE 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=c:/pp
-endif
-endif
-endif
-endif
-ifndef CROSSDIR
-CROSSDIR:=$(FPCDIR)/cross/$(FULL_TARGET)
-endif
-ifndef CROSSTARGETDIR
-CROSSTARGETDIR=$(CROSSDIR)/$(FULL_TARGET)
-endif
-ifdef CROSSCOMPILE
-UNITSDIR:=$(wildcard $(CROSSTARGETDIR)/units)
-ifeq ($(UNITSDIR),)
-UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
-endif
-else
-UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
-endif
-PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages)
-override PACKAGE_NAME=libasync
-override PACKAGE_VERSION=1.0.5
-override TARGET_UNITS+=libasync
-override INSTALL_FPCPACKAGE=y
-override INSTALL_CREATEPACKAGEFPC=y
-ifeq ($(OS_TARGET),linux)
-override COMPILER_SOURCEDIR+=unix
-endif
-ifeq ($(OS_TARGET),freebsd)
-override COMPILER_SOURCEDIR+=unix
-endif
-override COMPILER_TARGETDIR+=.
-ifdef REQUIRE_UNITSDIR
-override UNITSDIR+=$(REQUIRE_UNITSDIR)
-endif
-ifdef REQUIRE_PACKAGESDIR
-override PACKAGESDIR+=$(REQUIRE_PACKAGESDIR)
-endif
-ifdef ZIPINSTALL
-ifeq ($(OS_TARGET),linux)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_TARGET),freebsd)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_TARGET),netbsd)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_TARGET),sunos)
-UNIXINSTALLDIR=1
-endif
-else
-ifeq ($(OS_SOURCE),linux)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_SOURCE),freebsd)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_SOURCE),netbsd)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_TARGET),sunos)
-UNIXINSTALLDIR=1
-endif
-endif
-ifndef INSTALL_PREFIX
-ifdef PREFIX
-INSTALL_PREFIX=$(PREFIX)
-endif
-endif
-ifndef INSTALL_PREFIX
-ifdef UNIXINSTALLDIR
-INSTALL_PREFIX=/usr/local
-else
-ifdef INSTALL_FPCPACKAGE
-INSTALL_BASEDIR:=/pp
-else
-INSTALL_BASEDIR:=/$(PACKAGE_NAME)
-endif
-endif
-endif
-export INSTALL_PREFIX
-ifndef DIST_DESTDIR
-DIST_DESTDIR:=$(BASEDIR)
-endif
-export DIST_DESTDIR
-ifndef INSTALL_BASEDIR
-ifdef UNIXINSTALLDIR
-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 UNIXINSTALLDIR
-INSTALL_BINDIR:=$(INSTALL_PREFIX)/bin
-else
-INSTALL_BINDIR:=$(INSTALL_BASEDIR)/bin
-ifdef INSTALL_FPCPACKAGE
-INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(OS_TARGET)
-endif
-endif
-endif
-ifndef INSTALL_UNITDIR
-ifdef CROSSCOMPILE
-INSTALL_UNITDIR:=$(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/units
-else
-INSTALL_UNITDIR:=$(INSTALL_BASEDIR)/units/$(OS_TARGET)
-endif
-ifdef INSTALL_FPCPACKAGE
-ifdef PACKAGE_NAME
-INSTALL_UNITDIR:=$(INSTALL_UNITDIR)/$(PACKAGE_NAME)
-endif
-endif
-endif
-ifndef INSTALL_LIBDIR
-ifdef UNIXINSTALLDIR
-INSTALL_LIBDIR:=$(INSTALL_PREFIX)/lib
-else
-INSTALL_LIBDIR:=$(INSTALL_UNITDIR)
-endif
-endif
-ifndef INSTALL_SOURCEDIR
-ifdef UNIXINSTALLDIR
-ifdef INSTALL_FPCPACKAGE
-ifdef BSDhier
-INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/share/src/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-else
-INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/src/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-endif
-else
-ifdef BSDhier
-INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/share/src/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-else
-INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/src/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-endif
-endif
-else
-ifdef INSTALL_FPCPACKAGE
-INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source/$(PACKAGE_NAME)
-else
-INSTALL_SOURCEDIRL:=$(INSTALL_BASEDIR)/source
-endif
-endif
-endif
-ifndef INSTALL_DOCDIR
-ifdef UNIXINSTALLDIR
-ifdef INSTALL_FPCPACKAGE
-ifdef BSDhier
-INSTALL_DOCDIR:=$(INSTALL_PREFIX)/share/doc/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-else
-INSTALL_DOCDIR:=$(INSTALL_PREFIX)/doc/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-endif
-else
-ifdef BSDhier
-INSTALL_DOCDIR:=$(INSTALL_PREFIX)/share/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-else
-INSTALL_DOCDIR:=$(INSTALL_PREFIX)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-endif
-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 UNIXINSTALLDIR
-ifdef INSTALL_FPCPACKAGE
-ifdef BSDhier
-INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-else
-INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/fpc-$(FPC_VERSION)/examples/$(PACKAGE_NAME)
-endif
-else
-ifdef BSDhier
-INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-else
-INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-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
-ifdef CROSSCOMPILE
-ifndef CROSSBINDIR
-CROSSBINDIR:=$(wildcard $(CROSSTARGETDIR)/bin/$(FULL_SOURCE))
-ifeq ($(CROSSBINDIR),)
-CROSSBINDIR:=$(wildcard $(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/bin/$(FULL_SOURCE))
-endif
-endif
-else
-CROSSBINDIR=
-endif
-LOADEREXT=.as
-EXEEXT=.exe
-PPLEXT=.ppl
-PPUEXT=.ppu
-OEXT=.o
-ASMEXT=.s
-SMARTEXT=.sl
-STATICLIBEXT=.a
-SHAREDLIBEXT=.so
-STATICLIBPREFIX=libp
-RSTEXT=.rst
-FPCMADE=fpcmade
-ifeq ($(OS_TARGET),go32v1)
-PPUEXT=.pp1
-OEXT=.o1
-ASMEXT=.s1
-SMARTEXT=.sl1
-STATICLIBEXT=.a1
-SHAREDLIBEXT=.so1
-STATICLIBPREFIX=
-FPCMADE=fpcmade.v1
-PACKAGESUFFIX=v1
-endif
-ifeq ($(OS_TARGET),go32v2)
-STATICLIBPREFIX=
-FPCMADE=fpcmade.dos
-ZIPSUFFIX=go32
-endif
-ifeq ($(OS_TARGET),linux)
-EXEEXT=
-HASSHAREDLIB=1
-FPCMADE=fpcmade.lnx
-ZIPSUFFIX=linux
-endif
-ifeq ($(OS_TARGET),freebsd)
-EXEEXT=
-HASSHAREDLIB=1
-FPCMADE=fpcmade.freebsd
-ZIPSUFFIX=freebsd
-endif
-ifeq ($(OS_TARGET),netbsd)
-EXEEXT=
-HASSHAREDLIB=1
-FPCMADE=fpcmade.netbsd
-ZIPSUFFIX=netbsd
-endif
-ifeq ($(OS_TARGET),win32)
-PPUEXT=.ppw
-OEXT=.ow
-ASMEXT=.sw
-SMARTEXT=.slw
-STATICLIBEXT=.aw
-SHAREDLIBEXT=.dll
-FPCMADE=fpcmade.w32
-ZIPSUFFIX=w32
-endif
-ifeq ($(OS_TARGET),os2)
-PPUEXT=.ppo
-ASMEXT=.so2
-OEXT=.oo2
-AOUTEXT=.out
-SMARTEXT=.so
-STATICLIBEXT=.ao2
-SHAREDLIBEXT=.dll
-FPCMADE=fpcmade.os2
-ZIPSUFFIX=emx
-endif
-ifeq ($(OS_TARGET),amiga)
-EXEEXT=
-PPUEXT=.ppa
-ASMEXT=.asm
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-SHAREDLIBEXT=.library
-FPCMADE=fpcmade.amg
-endif
-ifeq ($(OS_TARGET),atari)
-PPUEXT=.ppt
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=.ttp
-FPCMADE=fpcmade.ata
-endif
-ifeq ($(OS_TARGET),beos)
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=
-FPCMADE=fpcmade.be
-ZIPSUFFIX=be
-endif
-ifeq ($(OS_TARGET),sunos)
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=
-FPCMADE=fpcmade.sun
-ZIPSUFFIX=sun
-endif
-ifeq ($(OS_TARGET),qnx)
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=
-FPCMADE=fpcmade.qnx
-ZIPSUFFIX=qnx
-endif
-ifndef ECHO
-ECHO:=$(strip $(wildcard $(addsuffix /gecho$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(ECHO),)
-ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(ECHO),)
-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=
-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=
-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=
-else
-CPPROG:=$(firstword $(CPPROG))
-endif
-endif
-export CPPROG
-ifndef RMPROG
-RMPROG:=$(strip $(wildcard $(addsuffix /rm$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(RMPROG),)
-RMPROG=
-else
-RMPROG:=$(firstword $(RMPROG))
-endif
-endif
-export RMPROG
-ifndef MVPROG
-MVPROG:=$(strip $(wildcard $(addsuffix /mv$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(MVPROG),)
-MVPROG=
-else
-MVPROG:=$(firstword $(MVPROG))
-endif
-endif
-export MVPROG
-ifndef ECHOREDIR
-ECHOREDIR:=$(subst /,$(PATHSEP),$(ECHO))
-endif
-ifndef COPY
-COPY:=$(CPPROG) -fp
-endif
-ifndef COPYTREE
-COPYTREE:=$(CPPROG) -rfp
-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=
-else
-PPUMOVE:=$(firstword $(PPUMOVE))
-endif
-endif
-export PPUMOVE
-ifndef FPCMAKE
-FPCMAKE:=$(strip $(wildcard $(addsuffix /fpcmake$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(FPCMAKE),)
-FPCMAKE=
-else
-FPCMAKE:=$(firstword $(FPCMAKE))
-endif
-endif
-export FPCMAKE
-ifndef ZIPPROG
-ZIPPROG:=$(strip $(wildcard $(addsuffix /zip$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(ZIPPROG),)
-ZIPPROG=
-else
-ZIPPROG:=$(firstword $(ZIPPROG))
-endif
-endif
-export ZIPPROG
-ifndef TARPROG
-TARPROG:=$(strip $(wildcard $(addsuffix /tar$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(TARPROG),)
-TARPROG=
-else
-TARPROG:=$(firstword $(TARPROG))
-endif
-endif
-export TARPROG
-ASNAME=as
-LDNAME=ld
-ARNAME=ar
-RCNAME=rc
-ifeq ($(OS_TARGET),win32)
-ASNAME=asw
-LDNAME=ldw
-ARNAME=arw
-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$(BATCHEXT)
-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=vI
-TAREXT=.tar.bz2
-else
-TAROPT=vz
-TAREXT=.tar.gz
-endif
-override REQUIRE_PACKAGES=rtl rtl
-ifeq ($(OS_TARGET),linux)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(OS_TARGET),go32v2)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(OS_TARGET),win32)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(OS_TARGET),os2)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(OS_TARGET),freebsd)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(OS_TARGET),beos)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(OS_TARGET),netbsd)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(OS_TARGET),amiga)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(OS_TARGET),atari)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(OS_TARGET),sunos)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(OS_TARGET),qnx)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifdef REQUIRE_PACKAGES_RTL
-PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
-ifneq ($(PACKAGEDIR_RTL),)
-ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
-UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
-else
-UNITDIR_RTL=$(PACKAGEDIR_RTL)
-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
-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
-ifeq ($(CPU_TARGET),i386)
-FPCCPUOPT:=-OG2p3
-else
-FPCCPUOPT:=
-endif
-override FPCOPT+=-Xs $(FPCCPUOPT) -n
-override FPCOPTDEF+=RELEASE
-endif
-ifdef STRIP
-override FPCOPT+=-Xs
-endif
-ifdef OPTIMIZE
-ifeq ($(CPU_TARGET),i386)
-override FPCOPT+=-OG2p3
-endif
-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 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 COMPILER:=$(FPC) $(FPCOPT)
-ifeq (,$(findstring -s ,$(COMPILER)))
-EXECPPAS=
-else
-ifeq ($(OS_SOURCE),$(OS_TARGET))
-EXECPPAS:=@$(PPAS)
-endif
-endif
-.PHONY: fpc_units
-ifdef 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: $(UNITPPUFILES)
-ifdef TARGET_RSTS
-override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS))
-override CLEANRSTFILES+=$(RSTFILES)
-endif
-.PHONY: fpc_all fpc_smart fpc_debug fpc_release
-$(FPCMADE): $(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 .pp .rc .res
-%$(PPUEXT): %.pp
-	$(COMPILER) $<
-	$(EXECPPAS)
-%$(PPUEXT): %.pas
-	$(COMPILER) $<
-	$(EXECPPAS)
-%$(EXEEXT): %.pp
-	$(COMPILER) $<
-	$(EXECPPAS)
-%$(EXEEXT): %.pas
-	$(COMPILER) $<
-	$(EXECPPAS)
-%.res: %.rc
-	windres -i $< -o $@
-vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
-vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
-vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
-.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),$(INSTALLPPUFILES))
-endif
-ifdef INSTALLPPUFILES
-override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
-override INSTALLPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPUFILES))
-override INSTALLPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPULINKFILES)))
-override INSTALL_CREATEPACKAGEFPC=1
-endif
-ifdef INSTALLEXEFILES
-override INSTALLEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(INSTALLEXEFILES))
-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$(OS_TARGET) Makefile.fpc
-	$(MKDIR) $(INSTALL_UNITDIR)
-	$(INSTALL) Package.fpc $(INSTALL_UNITDIR)
-endif
-endif
-endif
-endif
-ifdef INSTALLPPUFILES
-	$(MKDIR) $(INSTALL_UNITDIR)
-	$(INSTALL) $(INSTALLPPUFILES) $(INSTALL_UNITDIR)
-ifneq ($(INSTALLPPULINKFILES),)
-	$(INSTALL) $(INSTALLPPULINKFILES) $(INSTALL_UNITDIR)
-endif
-ifneq ($(wildcard $(LIB_FULLNAME)),)
-	$(MKDIR) $(INSTALL_LIBDIR)
-	$(INSTALL) $(LIB_FULLNAME) $(INSTALL_LIBDIR)
-ifdef inUnix
-	ln -sf $(LIB_FULLNAME) $(INSTALL_LIBDIR)/$(LIB_NAME)
-endif
-endif
-endif
-ifdef INSTALL_FILES
-	$(MKDIR) $(INSTALL_DATADIR)
-	$(INSTALL) $(INSTALL_FILES) $(INSTALL_DATADIR)
-endif
-fpc_sourceinstall: distclean
-	$(MKDIR) $(INSTALL_SOURCEDIR)
-	$(COPYTREE) $(BASEDIR) $(INSTALL_SOURCEDIR)
-fpc_exampleinstall: $(addsuffix _distclean,$(TARGET_EXAMPLEDIRS))
-ifdef HASEXAMPLES
-	$(MKDIR) $(INSTALL_EXAMPLEDIR)
-endif
-ifdef EXAMPLESOURCEFILES
-	$(COPY) $(EXAMPLESOURCEFILES) $(INSTALL_EXAMPLEDIR)
-endif
-ifdef TARGET_EXAMPLEDIRS
-	$(COPYTREE) $(addsuffix /*,$(TARGET_EXAMPLEDIRS)) $(INSTALL_EXAMPLEDIR)
-endif
-.PHONY: fpc_distinstall
-fpc_distinstall: install exampleinstall
-.PHONY: fpc_zipinstall fpc_zipsourceinstall fpc_zipexampleinstall
-ifndef PACKDIR
-ifndef inUnix
-PACKDIR=$(BASEDIR)/../fpc-pack
-else
-PACKDIR=/tmp/fpc-pack
-endif
-endif
-ifndef ZIPNAME
-ifdef DIST_ZIPNAME
-ZIPNAME=$(DIST_ZIPNAME)
-else
-ZIPNAME=$(ZIPPREFIX)$(PACKAGE_NAME)$(ZIPSUFFIX)
-endif
-endif
-ifndef ZIPTARGET
-ifdef DIST_ZIPTARGET
-ZIPTARGET=DIST_ZIPTARGET
-else
-ZIPTARGET=install
-endif
-endif
-ifndef USEZIP
-ifdef inUnix
-USETAR=1
-endif
-endif
-ifndef inUnix
-USEZIPWRAPPER=1
-endif
-ifdef USEZIPWRAPPER
-ZIPPATHSEP=$(PATHSEP)
-ZIPWRAPPER=$(subst /,$(PATHSEP),$(DIST_DESTDIR)/fpczip$(BATCHEXT))
-else
-ZIPPATHSEP=/
-endif
-ZIPCMD_CDPACK:=cd $(subst /,$(ZIPPATHSEP),$(PACKDIR))
-ZIPCMD_CDBASE:=cd $(subst /,$(ZIPPATHSEP),$(BASEDIR))
-ifdef USETAR
-ZIPDESTFILE:=$(DIST_DESTDIR)/$(ZIPNAME)$(TAREXT)
-ZIPCMD_ZIP:=$(TARPROG) cf$(TAROPT) $(ZIPDESTFILE) *
-else
-ZIPDESTFILE:=$(DIST_DESTDIR)/$(ZIPNAME)$(ZIPEXT)
-ZIPCMD_ZIP:=$(subst /,$(ZIPPATHSEP),$(ZIPPROG)) -Dr $(ZIPOPT) $(ZIPDESTFILE) *
-endif
-fpc_zipinstall:
-	$(MAKE) $(ZIPTARGET) INSTALL_PREFIX=$(PACKDIR) ZIPINSTALL=1
-	$(MKDIR) $(DIST_DESTDIR)
-	$(DEL) $(ZIPDESTFILE)
-ifdef USEZIPWRAPPER
-ifneq ($(ECHOREDIR),echo)
-	$(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_CDPACK))" > $(ZIPWRAPPER)
-	$(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_ZIP))" >> $(ZIPWRAPPER)
-	$(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_CDBASE))" >> $(ZIPWRAPPER)
-else
-	echo $(ZIPCMD_CDPACK) > $(ZIPWRAPPER)
-	echo $(ZIPCMD_ZIP) >> $(ZIPWRAPPER)
-	echo $(ZIPCMD_CDBASE) >> $(ZIPWRAPPER)
-endif
-ifdef inUnix
-	/bin/sh $(ZIPWRAPPER)
-else
-	$(ZIPWRAPPER)
-endif
-	$(DEL) $(ZIPWRAPPER)
-else
-	$(ZIPCMD_CDPACK) ; $(ZIPCMD_ZIP) ; $(ZIPCMD_CDBASE)
-endif
-	$(DELTREE) $(PACKDIR)
-fpc_zipsourceinstall:
-	$(MAKE) fpc_zipinstall ZIPTARGET=sourceinstall ZIPSUFFIX=src
-fpc_zipexampleinstall:
-ifdef HASEXAMPLES
-	$(MAKE) fpc_zipinstall ZIPTARGET=exampleinstall ZIPSUFFIX=exm
-endif
-fpc_zipdistinstall:
-	$(MAKE) fpc_zipinstall ZIPTARGET=distinstall
-.PHONY: fpc_clean fpc_cleanall fpc_distclean
-ifdef EXEFILES
-override CLEANEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(CLEANEXEFILES))
-endif
-ifdef CLEAN_UNITS
-override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
-endif
-ifdef CLEANPPUFILES
-override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
-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)
-fpc_distclean: clean
-ifdef COMPILER_UNITTARGETDIR
-TARGETDIRCLEAN=fpc_clean
-endif
-fpc_cleanall: $(CLEANTARGET) $(TARGETDIRCLEAN)
-ifdef CLEANEXEFILES
-	-$(DEL) $(CLEANEXEFILES)
-endif
-	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
-	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
-ifdef AOUTEXT
-	-$(DEL) *$(AOUTEXT)
-endif
-.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 Target.. $(FULL_SOURCE)
-	@$(ECHO)  Full Source.. $(FULL_TARGET)
-	@$(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)  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)  ZipPrefix............ $(ZIPPREFIX)
-	@$(ECHO)  ZipSuffix............ $(ZIPSUFFIX)
-	@$(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
-examples:
-shared:
-install: fpc_install
-sourceinstall: fpc_sourceinstall
-exampleinstall: fpc_exampleinstall
-distinstall: fpc_distinstall
-zipinstall: fpc_zipinstall
-zipsourceinstall: fpc_zipsourceinstall
-zipexampleinstall: fpc_zipexampleinstall
-zipdistinstall: fpc_zipdistinstall
-clean: fpc_clean
-distclean: fpc_distclean
-cleanall: fpc_cleanall
-info: fpc_info
-makefiles: fpc_makefiles
-.PHONY: all debug smart release examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefiles
-ifneq ($(wildcard fpcmake.loc),)
-include fpcmake.loc
-endif

+ 0 - 25
packages/asyncio/libasync/Makefile.fpc

@@ -1,25 +0,0 @@
-#
-#   Makefile.fpc for libasync
-#
-
-[package]
-name=libasync
-version=1.0.5
-
-[target]
-units=libasync
-
-[install]
-fpcpackage=y
-createpackagefpc=y
-
-[compiler]
-sourcedir_linux=unix
-sourcedir_freebsd=unix
-targetdir=.
-
-[require]
-packages=rtl
-
-[default]
-fpcdir=../../..

+ 0 - 120
packages/asyncio/libasync/libasync.inc

@@ -1,120 +0,0 @@
-{
-    $Id$
-
-    libasync: Asynchronous event management
-    Copyright (C) 2001 by
-      Areca Systems GmbH / Sebastian Guenther, [email protected]
-
-    Common interface declaration
-
-    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.
-}
-
-type
-  TAsyncHandleStruct = packed record
-    UserData: Pointer;
-    Data: TAsyncData;
-  end;
-  TAsyncHandle = ^TAsyncHandleStruct;
-
-  TAsyncTimer = Pointer;
-
-  TAsyncCallback = procedure(UserData: Pointer); cdecl;
-
-
-// Construction and destruction
-
-procedure asyncInit(
-  Handle: TAsyncHandle); cdecl;
-
-procedure asyncFree(
-  Handle: TAsyncHandle); cdecl;
-
-
-// Running and stopping the event loop
-
-procedure asyncRun(
-  Handle: TAsyncHandle); cdecl;
-
-procedure asyncBreak(
-  Handle: TAsyncHandle); cdecl;
-
-
-// Status information
-
-function asyncIsRunning(
-  Handle: TAsyncHandle
-  ): Boolean; cdecl;
-
-function asyncGetTicks: Int64; cdecl;
-
-
-// Timer management
-
-function asyncAddTimer(
-  Handle: TAsyncHandle;
-  MSec: LongInt;
-  Periodic: Boolean;		// False = One-shot timer, True = Periodic timer
-  Callback: TAsyncCallback;
-  UserData: Pointer		// User data for callback
-  ): TAsyncTimer; cdecl;
-
-procedure asyncRemoveTimer(
-  Handle: TAsyncHandle;
-  Timer: TASyncTimer); cdecl;
-
-
-// I/O callback management
-
-procedure asyncSetIOCallback(
-  Handle: TAsyncHandle;
-  IOHandle: LongInt;
-  Callback: TAsyncCallback;
-  UserData: Pointer); cdecl;
-
-procedure asyncClearIOCallback(
-  Handle: TAsyncHandle;
-  IOHandle: LongInt); cdecl;
-
-procedure asyncSetDataAvailableCallback(
-  Handle: TAsyncHandle;
-  IOHandle: LongInt;
-  Callback: TAsyncCallback;
-  UserData: Pointer); cdecl;
-
-procedure asyncClearDataAvailableCallback(
-  Handle: TAsyncHandle;
-  IOHandle: LongInt); cdecl;
-
-procedure asyncSetCanWriteCallback(
-  Handle: TAsyncHandle;
-  IOHandle: LongInt;
-  Callback: TAsyncCallback;
-  UserData: Pointer); cdecl;
-
-procedure asyncClearCanWriteCallback(
-  Handle: TAsyncHandle;
-  IOHandle: LongInt); cdecl;
-
-
-{
-  $Log$
-  Revision 1.2  2001-12-11 17:45:28  marco
-   * was only commited to fixes.
-
-  Revision 1.1.2.2  2001/11/16 12:51:41  sg
-  * Now different handlers for available data and space in write buffer can
-    be set
-  * LOTS of bugfixes in the implementation
-  * fpAsync now has a write buffer class (a read buffer class for reading
-    line by line will be included in the next release)
-
-  Revision 1.1.2.1  2001/09/08 15:43:24  sg
-  * First public version
-
-}

+ 0 - 525
packages/asyncio/libasync/unix/libasync.pp

@@ -1,525 +0,0 @@
-{
-    $Id$
-
-    libasync: Asynchronous event management
-    Copyright (C) 2001 by
-      Areca Systems GmbH / Sebastian Guenther, [email protected]
-
-    Unix implementation
-
-    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 libasync;
-
-{$MODE objfpc}
-
-interface
-
-type
-
-  TAsyncData = record
-    IsRunning, DoBreak: Boolean;
-    HasCallbacks: Boolean;	// True as long as callbacks are set
-    FirstTimer: Pointer;
-    FirstIOCallback: Pointer;
-    FDData: Pointer;
-    HighestHandle: LongInt;
-  end;
-
-{$INCLUDE libasync.inc}
-
-
-
-implementation
-
-{$ifdef VER1_0}
-uses Linux;
-{$else}
-Uses Unix;
-{$endif}
-
-const
-  MaxHandle = SizeOf(TFDSet) * 8 - 1;
-
-type
-  PTimerData = ^TTimerData;
-  TTimerData = record
-    Next: PTimerData;
-    MSec: LongInt;
-    NextTick: Int64;
-    Callback: TAsyncCallback;
-    UserData: Pointer;
-    Periodic: Boolean;
-  end;
-
-  PIOCallbackData = ^TIOCallbackData;
-  TIOCallbackData = record
-    Next: PIOCallbackData;
-    IOHandle: LongInt;
-    ReadCallback, WriteCallback: TAsyncCallback;
-    ReadUserData, WriteUserData: Pointer;
-    SavedHandleFlags: LongInt;
-  end;
-
-
-
-procedure InitIOCallback(Handle: TAsyncHandle; IOHandle: LongInt;
-  ARead: Boolean; ReadCallback: TAsyncCallback; ReadUserData: Pointer;
-  AWrite: Boolean; WriteCallback: TAsyncCallback; WriteUserData: Pointer);
-var
-  Data: PIOCallbackData;
-  i: LongInt;
-  NeedData: Boolean;
-begin
-  if IOHandle > MaxHandle then
-    exit;
-
-  NeedData := True;
-  Data := Handle^.Data.FirstIOCallback;
-  while Assigned(Data) do
-  begin
-    if Data^.IOHandle = IOHandle then
-    begin
-      if ARead then
-      begin
-        Data^.ReadCallback := ReadCallback;
-	Data^.ReadUserData := ReadUserData;
-      end;
-      if AWrite then
-      begin
-        Data^.WriteCallback := WriteCallback;
-	Data^.WriteUserData := WriteUserData;
-      end;
-      NeedData := False;
-      break;
-    end;
-    Data := Data^.Next;
-  end;
-
-  if NeedData then
-  begin
-    New(Data);
-    Data^.Next := Handle^.Data.FirstIOCallback;
-    Handle^.Data.FirstIOCallback := Data;
-    Data^.IOHandle := IOHandle;
-    if ARead then
-    begin
-      Data^.ReadCallback := ReadCallback;
-      Data^.ReadUserData := ReadUserData;
-    end else
-      Data^.ReadCallback := nil;
-    if AWrite then
-    begin
-      Data^.WriteCallback := WriteCallback;
-      Data^.WriteUserData := WriteUserData;
-    end else
-      Data^.WriteCallback := nil;
-
-    if not Assigned(Handle^.Data.FDData) then
-    begin
-      GetMem(Handle^.Data.FDData, SizeOf(TFDSet) * 2);
-      FD_Zero(PFDSet(Handle^.Data.FDData)[0]);
-      FD_Zero(PFDSet(Handle^.Data.FDData)[1]);
-    end;
-    if IOHandle > Handle^.Data.HighestHandle then
-      Handle^.Data.HighestHandle := IOHandle;
-  end;
-
-  Data^.SavedHandleFlags := fcntl(IOHandle, F_GetFl);
-  fcntl(IOHandle, F_SetFl, Data^.SavedHandleFlags or Open_NonBlock);
-
-  case IOHandle of
-    StdInputHandle:
-      i := Open_RdOnly;
-    StdOutputHandle, StdErrorHandle:
-      i := Open_WrOnly;
-    else
-      i := Data^.SavedHandleFlags and Open_Accmode;
-  end;
-
-  case i of
-    Open_RdOnly:
-      if ARead then
-        FD_Set(IOHandle, PFDSet(Handle^.Data.FDData)[0]);
-    Open_WrOnly:
-      if AWrite then
-        FD_Set(IOHandle, PFDSet(Handle^.Data.FDData)[1]);
-    Open_RdWr:
-      begin
-        if ARead then
-	  FD_Set(IOHandle, PFDSet(Handle^.Data.FDData)[0]);
-	if AWrite then
-	  FD_Set(IOHandle, PFDSet(Handle^.Data.FDData)[1]);
-      end;
-  end;
-
-  Handle^.Data.HasCallbacks := True;
-end;
-
-procedure CheckForCallbacks(Handle: TAsyncHandle);
-var
-  Data: PIOCallbackData;
-begin
-  if (Handle^.Data.HasCallbacks) and
-    (not Assigned(Handle^.Data.FirstIOCallback)) and
-    (not Assigned(Handle^.Data.FirstTimer)) then
-    Handle^.Data.HasCallbacks := False;
-end;
-
-
-
-procedure asyncInit(Handle: TAsyncHandle); cdecl;
-begin
-  Handle^.Data.HighestHandle := -1;
-end;
-
-procedure asyncFree(Handle: TAsyncHandle); cdecl;
-var
-  Timer, NextTimer: PTimerData;
-  IOCallback, NextIOCallback: PIOCallbackData;
-begin
-  Timer := PTimerData(Handle^.Data.FirstTimer);
-  while Assigned(Timer) do
-  begin
-    NextTimer := Timer^.Next;
-    Dispose(Timer);
-    Timer := NextTimer;
-  end;
-
-  IOCallback := PIOCallbackData(Handle^.Data.FirstIOCallback);
-  while Assigned(IOCallback) do
-  begin
-    if (IOCallback^.SavedHandleFlags and Open_NonBlock) = 0 then
-      fcntl(IOCallback^.IOHandle, F_SetFl, IOCallback^.SavedHandleFlags);
-    NextIOCallback := IOCallback^.Next;
-    Dispose(IOCallback);
-    IOCallback := NextIOCallback;
-  end;
-
-  if Assigned(Handle^.Data.FDData) then
-    FreeMem(Handle^.Data.FDData);
-end;
-
-procedure asyncRun(Handle: TAsyncHandle); cdecl;
-var
-  Timer, NextTimer: PTimerData;
-  TimeOut, AsyncResult: Integer;
-  CurTime, NextTick: Int64;
-  CurReadFDSet, CurWriteFDSet: TFDSet;
-  IOCallback: PIOCallbackData;
-begin
-  if Handle^.Data.IsRunning then
-    exit;
-
-  Handle^.Data.DoBreak := False;
-  Handle^.Data.IsRunning := True;
-
-  // Prepare timers
-  if Assigned(Handle^.Data.FirstTimer) then
-  begin
-    CurTime := asyncGetTicks;
-    Timer := Handle^.Data.FirstTimer;
-    while Assigned(Timer) do
-    begin
-      Timer^.NextTick := CurTime + Timer^.MSec;
-      Timer := Timer^.Next;
-    end;
-  end;
-
-  while (not Handle^.Data.DoBreak) and Handle^.Data.HasCallbacks do
-  begin
-    Timer := Handle^.Data.FirstTimer;
-    if Assigned(Handle^.Data.FirstTimer) then
-    begin
-      // Determine when the next timer tick will happen
-      CurTime := asyncGetTicks;
-      NextTick := High(Int64);
-      Timer := Handle^.Data.FirstTimer;
-      while Assigned(Timer) do
-      begin
-        if Timer^.NextTick < NextTick then
-	  NextTick := Timer^.NextTick;
-	Timer := Timer^.Next;
-      end;
-      TimeOut := NextTick - CurTime;
-      if TimeOut < 0 then
-        TimeOut := 0;
-    end else
-      TimeOut := -1;
-
-    if Handle^.Data.HighestHandle >= 0 then
-    begin
-      CurReadFDSet := PFDSet(Handle^.Data.FDData)[0];
-      CurWriteFDSet := PFDSet(Handle^.Data.FDData)[1];
-      AsyncResult := Select(Handle^.Data.HighestHandle + 1,
-        @CurReadFDSet, @CurWriteFDSet, nil, TimeOut);
-    end else
-      AsyncResult := Select(0, nil, nil, nil, TimeOut);
-
-    if Assigned(Handle^.Data.FirstTimer) then
-    begin
-      // Check for triggered timers
-      CurTime := asyncGetTicks;
-      Timer := Handle^.Data.FirstTimer;
-      while Assigned(Timer) do
-      begin
-        if Timer^.NextTick <= CurTime then
-	begin
-	  Timer^.Callback(Timer^.UserData);
-	  NextTimer := Timer^.Next;
-	  if Timer^.Periodic then
-	    Inc(Timer^.NextTick, Timer^.MSec)
-	  else
-	    asyncRemoveTimer(Handle, Timer);
-	  if Handle^.Data.DoBreak then
-	    break;
-	  Timer := NextTimer;
-	end else
-	  Timer := Timer^.Next;
-      end;
-    end;
-
-    if (AsyncResult > 0) and not Handle^.Data.DoBreak then
-    begin
-      // Check for I/O events
-      IOCallback := Handle^.Data.FirstIOCallback;
-      while Assigned(IOCallback) do
-      begin
-	if FD_IsSet(IOCallback^.IOHandle, CurReadFDSet) and
-	  FD_IsSet(IOCallback^.IOHandle, PFDSet(Handle^.Data.FDData)[0]) then
-	begin
-	  IOCallback^.ReadCallback(IOCallback^.ReadUserData);
-	  if Handle^.Data.DoBreak then
-	    break;
-	end;
-
-	if FD_IsSet(IOCallback^.IOHandle, CurWriteFDSet) and
-	  FD_IsSet(IOCallback^.IOHandle, PFDSet(Handle^.Data.FDData)[1]) then
-	begin
-	  IOCallback^.WriteCallback(IOCallback^.WriteUserData);
-	  if Handle^.Data.DoBreak then
-	    break;
-	end;
-
-	IOCallback := IOCallback^.Next;
-      end;
-    end;
-  end;
-  Handle^.Data.IsRunning := False;
-end;
-
-procedure asyncBreak(Handle: TAsyncHandle); cdecl;
-begin
-  Handle^.Data.DoBreak := True;
-end;
-
-function asyncIsRunning(Handle: TAsyncHandle): Boolean; cdecl;
-begin
-  Result := Handle^.Data.IsRunning;
-end;
-
-function asyncGetTicks: Int64; cdecl;
-var
-  Time: TimeVal;
-begin
-  GetTimeOfDay(Time);
-  Result := Int64(Time.Sec) * 1000 + Int64(Time.USec div 1000);
-end;
-
-function asyncAddTimer(
-  Handle: TAsyncHandle;
-  MSec: LongInt;
-  Periodic: Boolean;
-  Callback: TAsyncCallback;
-  UserData: Pointer
-  ): TAsyncTimer; cdecl;
-var
-  Data: PTimerData;
-begin
-  if not Assigned(Callback) then
-    exit;
-
-  New(Data);
-  Result := Data;
-  Data^.Next := Handle^.Data.FirstTimer;
-  Handle^.Data.FirstTimer := Data;
-  Data^.MSec := MSec;
-  Data^.Periodic := Periodic;
-  Data^.Callback := Callback;
-  Data^.UserData := UserData;
-  if Handle^.Data.IsRunning then
-    Data^.NextTick := asyncGetTicks + MSec;
-
-  Handle^.Data.HasCallbacks := True;
-end;
-
-procedure asyncRemoveTimer(
-  Handle: TAsyncHandle;
-  Timer: TASyncTimer); cdecl;
-var
-  Data, CurData, PrevData, NextData: PTimerData;
-begin
-  Data := PTimerData(Timer);
-  CurData := Handle^.Data.FirstTimer;
-  PrevData := nil;
-  while Assigned(CurData) do
-  begin
-    NextData := CurData^.Next;
-    if CurData = Data then
-    begin
-      if Assigned(PrevData) then
-        PrevData^.Next := NextData
-      else
-        Handle^.Data.FirstTimer := NextData;
-      break;
-    end;
-    PrevData := CurData;
-    CurData := NextData;
-  end;
-  Dispose(Data);
-  CheckForCallbacks(Handle);
-end;
-
-procedure asyncSetIOCallback(
-  Handle: TAsyncHandle;
-  IOHandle: LongInt;
-  Callback: TAsyncCallback;
-  UserData: Pointer); cdecl;
-begin
-  InitIOCallback(Handle, IOHandle, True, Callback, UserData,
-    True, Callback, UserData);
-end;
-
-procedure asyncClearIOCallback(Handle: TAsyncHandle;
-  IOHandle: LongInt); cdecl;
-var
-  CurData, PrevData, NextData: PIOCallbackData;
-begin
-  CurData := Handle^.Data.FirstIOCallback;
-  PrevData := nil;
-  while Assigned(CurData) do
-  begin
-    NextData := CurData^.Next;
-    if CurData^.IOHandle = IOHandle then
-    begin
-      FD_Clr(IOHandle, PFDSet(Handle^.Data.FDData)[0]);
-      FD_Clr(IOHandle, PFDSet(Handle^.Data.FDData)[1]);
-      if Assigned(PrevData) then
-        PrevData^.Next := NextData
-      else
-        Handle^.Data.FirstIOCallback := NextData;
-      Dispose(CurData);
-      break;
-    end;
-    PrevData := CurData;
-    CurData := NextData;
-  end;
-  CheckForCallbacks(Handle);
-end;
-
-procedure asyncSetDataAvailableCallback(
-  Handle: TAsyncHandle;
-  IOHandle: LongInt;
-  Callback: TAsyncCallback;
-  UserData: Pointer); cdecl;
-begin
-  InitIOCallback(Handle, IOHandle, True, Callback, UserData, False, nil, nil);
-end;
-
-procedure asyncClearDataAvailableCallback(Handle: TAsyncHandle;
-  IOHandle: LongInt); cdecl;
-var
-  CurData, PrevData, NextData: PIOCallbackData;
-begin
-  CurData := Handle^.Data.FirstIOCallback;
-  PrevData := nil;
-  while Assigned(CurData) do
-  begin
-    NextData := CurData^.Next;
-    if CurData^.IOHandle = IOHandle then
-    begin
-      FD_Clr(IOHandle, PFDSet(Handle^.Data.FDData)[0]);
-      if Assigned(CurData^.WriteCallback) then
-        CurData^.ReadCallback := nil
-      else
-      begin
-        if Assigned(PrevData) then
-          PrevData^.Next := NextData
-        else
-          Handle^.Data.FirstIOCallback := NextData;
-        Dispose(CurData);
-      end;
-      break;
-    end;
-    PrevData := CurData;
-    CurData := NextData;
-  end;
-  CheckForCallbacks(Handle);
-end;
-
-procedure asyncSetCanWriteCallback(
-  Handle: TAsyncHandle;
-  IOHandle: LongInt;
-  Callback: TAsyncCallback;
-  UserData: Pointer); cdecl;
-begin
-  InitIOCallback(Handle, IOHandle, False, nil, nil, True, Callback, UserData);
-end;
-
-procedure asyncClearCanWriteCallback(Handle: TAsyncHandle;
-  IOHandle: LongInt); cdecl;
-var
-  CurData, PrevData, NextData: PIOCallbackData;
-begin
-  CurData := Handle^.Data.FirstIOCallback;
-  PrevData := nil;
-  while Assigned(CurData) do
-  begin
-    NextData := CurData^.Next;
-    if CurData^.IOHandle = IOHandle then
-    begin
-      FD_Clr(IOHandle, PFDSet(Handle^.Data.FDData)[1]);
-      if Assigned(CurData^.ReadCallback) then
-        CurData^.WriteCallback := nil
-      else
-      begin
-        if Assigned(PrevData) then
-          PrevData^.Next := NextData
-        else
-          Handle^.Data.FirstIOCallback := NextData;
-        Dispose(CurData);
-      end;
-      break;
-    end;
-    PrevData := CurData;
-    CurData := NextData;
-  end;
-  CheckForCallbacks(Handle);
-end;
-
-
-end.
-
-
-{
-  $Log$
-  Revision 1.2  2001-12-11 19:06:16  marco
-   * from fixes to devel.
-
-  Revision 1.1.2.2  2001/11/16 12:51:41  sg
-  * Now different handlers for available data and space in write buffer can
-    be set
-  * LOTS of bugfixes in the implementation
-  * fpAsync now has a write buffer class (a read buffer class for reading
-    line by line will be included in the next release)
-
-  Revision 1.1.2.1  2001/09/08 15:43:24  sg
-  * First public version
-
-}

+ 0 - 1234
packages/cmem/Makefile

@@ -1,1234 +0,0 @@
-#
-# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/27]
-#
-default: all
-MAKEFILETARGETS=linux go32v2 win32 os2 freebsd beos netbsd amiga atari sunos qnx
-override PATH:=$(subst \,/,$(PATH))
-ifeq ($(findstring ;,$(PATH)),)
-inUnix=1
-SEARCHPATH:=$(filter-out .,$(subst :, ,$(PATH)))
-else
-SEARCHPATH:=$(subst ;, ,$(PATH))
-endif
-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 cygwin,$(MACHTYPE)),)
-inCygWin=1
-endif
-endif
-ifeq ($(OS_TARGET),freebsd)
-BSDhier=1
-endif
-ifeq ($(OS_TARGET),netbsd)
-BSDhier=1
-endif
-ifdef inUnix
-BATCHEXT=.sh
-else
-ifdef inOS2
-BATCHEXT=.cmd
-else
-BATCHEXT=.bat
-endif
-endif
-ifdef inUnix
-PATHSEP=/
-else
-PATHSEP:=$(subst /,\,/)
-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
-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=ppc386
-endif
-else
-override FPC=ppc386
-endif
-endif
-override FPC:=$(subst $(SRCEXEEXT),,$(FPC))
-override FPC:=$(subst \,/,$(FPC))$(SRCEXEEXT)
-ifndef FPC_VERSION
-FPC_VERSION:=$(shell $(FPC) -iV)
-endif
-export FPC FPC_VERSION
-ifeq ($(findstring 1.0.,$(FPC_VERSION)),)
-COMPILERINFO:=$(shell $(FPC) -iSP -iTP -iSO -iTO)
-ifndef CPU_SOURCE
-CPU_SOURCE:=$(word 1,$(COMPILERINFO))
-endif
-ifndef CPU_TARGET
-CPU_TARGET:=$(word 2,$(COMPILERINFO))
-endif
-ifndef OS_SOURCE
-OS_SOURCE:=$(word 3,$(COMPILERINFO))
-endif
-ifndef OS_TARGET
-OS_TARGET:=$(word 4,$(COMPILERINFO))
-endif
-else
-ifndef CPU_SOURCE
-CPU_SOURCE:=$(shell $(FPC) -iSP)
-endif
-ifndef CPU_TARGET
-CPU_TARGET:=$(shell $(FPC) -iTP)
-endif
-ifndef OS_SOURCE
-OS_SOURCE:=$(shell $(FPC) -iSO)
-endif
-ifndef OS_TARGET
-OS_TARGET:=$(shell $(FPC) -iTO)
-endif
-endif
-FULL_TARGET=$(CPU_TARGET)-$(OS_TARGET)
-FULL_SOURCE=$(CPU_SOURCE)-$(OS_SOURCE)
-ifneq ($(FULL_TARGET),$(FULL_SOURCE))
-CROSSCOMPILE=1
-endif
-ifeq ($(findstring makefile,$(MAKECMDGOALS)),)
-ifeq ($(findstring $(OS_TARGET),$(MAKEFILETARGETS)),)
-$(error The Makefile doesn't support target $(OS_TARGET), please run fpcmake first)
-endif
-endif
-export OS_TARGET OS_SOURCE CPU_TARGET CPU_SOURCE FULL_TARGET FULL_SOURCE 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=c:/pp
-endif
-endif
-endif
-endif
-ifndef CROSSDIR
-CROSSDIR:=$(FPCDIR)/cross/$(FULL_TARGET)
-endif
-ifndef CROSSTARGETDIR
-CROSSTARGETDIR=$(CROSSDIR)/$(FULL_TARGET)
-endif
-ifdef CROSSCOMPILE
-UNITSDIR:=$(wildcard $(CROSSTARGETDIR)/units)
-ifeq ($(UNITSDIR),)
-UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
-endif
-else
-UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
-endif
-PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages)
-override PACKAGE_NAME=cmem
-override PACKAGE_VERSION=1.0.5
-override TARGET_UNITS+=cmem
-override TARGET_EXAMPLES+=testcmem
-override INSTALL_FPCPACKAGE=y
-ifdef REQUIRE_UNITSDIR
-override UNITSDIR+=$(REQUIRE_UNITSDIR)
-endif
-ifdef REQUIRE_PACKAGESDIR
-override PACKAGESDIR+=$(REQUIRE_PACKAGESDIR)
-endif
-ifdef ZIPINSTALL
-ifeq ($(OS_TARGET),linux)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_TARGET),freebsd)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_TARGET),netbsd)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_TARGET),sunos)
-UNIXINSTALLDIR=1
-endif
-else
-ifeq ($(OS_SOURCE),linux)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_SOURCE),freebsd)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_SOURCE),netbsd)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_TARGET),sunos)
-UNIXINSTALLDIR=1
-endif
-endif
-ifndef INSTALL_PREFIX
-ifdef PREFIX
-INSTALL_PREFIX=$(PREFIX)
-endif
-endif
-ifndef INSTALL_PREFIX
-ifdef UNIXINSTALLDIR
-INSTALL_PREFIX=/usr/local
-else
-ifdef INSTALL_FPCPACKAGE
-INSTALL_BASEDIR:=/pp
-else
-INSTALL_BASEDIR:=/$(PACKAGE_NAME)
-endif
-endif
-endif
-export INSTALL_PREFIX
-ifndef DIST_DESTDIR
-DIST_DESTDIR:=$(BASEDIR)
-endif
-export DIST_DESTDIR
-ifndef INSTALL_BASEDIR
-ifdef UNIXINSTALLDIR
-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 UNIXINSTALLDIR
-INSTALL_BINDIR:=$(INSTALL_PREFIX)/bin
-else
-INSTALL_BINDIR:=$(INSTALL_BASEDIR)/bin
-ifdef INSTALL_FPCPACKAGE
-INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(OS_TARGET)
-endif
-endif
-endif
-ifndef INSTALL_UNITDIR
-ifdef CROSSCOMPILE
-INSTALL_UNITDIR:=$(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/units
-else
-INSTALL_UNITDIR:=$(INSTALL_BASEDIR)/units/$(OS_TARGET)
-endif
-ifdef INSTALL_FPCPACKAGE
-ifdef PACKAGE_NAME
-INSTALL_UNITDIR:=$(INSTALL_UNITDIR)/$(PACKAGE_NAME)
-endif
-endif
-endif
-ifndef INSTALL_LIBDIR
-ifdef UNIXINSTALLDIR
-INSTALL_LIBDIR:=$(INSTALL_PREFIX)/lib
-else
-INSTALL_LIBDIR:=$(INSTALL_UNITDIR)
-endif
-endif
-ifndef INSTALL_SOURCEDIR
-ifdef UNIXINSTALLDIR
-ifdef INSTALL_FPCPACKAGE
-ifdef BSDhier
-INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/share/src/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-else
-INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/src/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-endif
-else
-ifdef BSDhier
-INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/share/src/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-else
-INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/src/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-endif
-endif
-else
-ifdef INSTALL_FPCPACKAGE
-INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source/$(PACKAGE_NAME)
-else
-INSTALL_SOURCEDIRL:=$(INSTALL_BASEDIR)/source
-endif
-endif
-endif
-ifndef INSTALL_DOCDIR
-ifdef UNIXINSTALLDIR
-ifdef INSTALL_FPCPACKAGE
-ifdef BSDhier
-INSTALL_DOCDIR:=$(INSTALL_PREFIX)/share/doc/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-else
-INSTALL_DOCDIR:=$(INSTALL_PREFIX)/doc/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-endif
-else
-ifdef BSDhier
-INSTALL_DOCDIR:=$(INSTALL_PREFIX)/share/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-else
-INSTALL_DOCDIR:=$(INSTALL_PREFIX)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-endif
-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 UNIXINSTALLDIR
-ifdef INSTALL_FPCPACKAGE
-ifdef BSDhier
-INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-else
-INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/fpc-$(FPC_VERSION)/examples/$(PACKAGE_NAME)
-endif
-else
-ifdef BSDhier
-INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-else
-INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-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
-ifdef CROSSCOMPILE
-ifndef CROSSBINDIR
-CROSSBINDIR:=$(wildcard $(CROSSTARGETDIR)/bin/$(FULL_SOURCE))
-ifeq ($(CROSSBINDIR),)
-CROSSBINDIR:=$(wildcard $(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/bin/$(FULL_SOURCE))
-endif
-endif
-else
-CROSSBINDIR=
-endif
-LOADEREXT=.as
-EXEEXT=.exe
-PPLEXT=.ppl
-PPUEXT=.ppu
-OEXT=.o
-ASMEXT=.s
-SMARTEXT=.sl
-STATICLIBEXT=.a
-SHAREDLIBEXT=.so
-STATICLIBPREFIX=libp
-RSTEXT=.rst
-FPCMADE=fpcmade
-ifeq ($(OS_TARGET),go32v1)
-PPUEXT=.pp1
-OEXT=.o1
-ASMEXT=.s1
-SMARTEXT=.sl1
-STATICLIBEXT=.a1
-SHAREDLIBEXT=.so1
-STATICLIBPREFIX=
-FPCMADE=fpcmade.v1
-PACKAGESUFFIX=v1
-endif
-ifeq ($(OS_TARGET),go32v2)
-STATICLIBPREFIX=
-FPCMADE=fpcmade.dos
-ZIPSUFFIX=go32
-endif
-ifeq ($(OS_TARGET),linux)
-EXEEXT=
-HASSHAREDLIB=1
-FPCMADE=fpcmade.lnx
-ZIPSUFFIX=linux
-endif
-ifeq ($(OS_TARGET),freebsd)
-EXEEXT=
-HASSHAREDLIB=1
-FPCMADE=fpcmade.freebsd
-ZIPSUFFIX=freebsd
-endif
-ifeq ($(OS_TARGET),netbsd)
-EXEEXT=
-HASSHAREDLIB=1
-FPCMADE=fpcmade.netbsd
-ZIPSUFFIX=netbsd
-endif
-ifeq ($(OS_TARGET),win32)
-PPUEXT=.ppw
-OEXT=.ow
-ASMEXT=.sw
-SMARTEXT=.slw
-STATICLIBEXT=.aw
-SHAREDLIBEXT=.dll
-FPCMADE=fpcmade.w32
-ZIPSUFFIX=w32
-endif
-ifeq ($(OS_TARGET),os2)
-PPUEXT=.ppo
-ASMEXT=.so2
-OEXT=.oo2
-AOUTEXT=.out
-SMARTEXT=.so
-STATICLIBEXT=.ao2
-SHAREDLIBEXT=.dll
-FPCMADE=fpcmade.os2
-ZIPSUFFIX=emx
-endif
-ifeq ($(OS_TARGET),amiga)
-EXEEXT=
-PPUEXT=.ppa
-ASMEXT=.asm
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-SHAREDLIBEXT=.library
-FPCMADE=fpcmade.amg
-endif
-ifeq ($(OS_TARGET),atari)
-PPUEXT=.ppt
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=.ttp
-FPCMADE=fpcmade.ata
-endif
-ifeq ($(OS_TARGET),beos)
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=
-FPCMADE=fpcmade.be
-ZIPSUFFIX=be
-endif
-ifeq ($(OS_TARGET),sunos)
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=
-FPCMADE=fpcmade.sun
-ZIPSUFFIX=sun
-endif
-ifeq ($(OS_TARGET),qnx)
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=
-FPCMADE=fpcmade.qnx
-ZIPSUFFIX=qnx
-endif
-ifndef ECHO
-ECHO:=$(strip $(wildcard $(addsuffix /gecho$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(ECHO),)
-ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(ECHO),)
-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=
-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=
-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=
-else
-CPPROG:=$(firstword $(CPPROG))
-endif
-endif
-export CPPROG
-ifndef RMPROG
-RMPROG:=$(strip $(wildcard $(addsuffix /rm$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(RMPROG),)
-RMPROG=
-else
-RMPROG:=$(firstword $(RMPROG))
-endif
-endif
-export RMPROG
-ifndef MVPROG
-MVPROG:=$(strip $(wildcard $(addsuffix /mv$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(MVPROG),)
-MVPROG=
-else
-MVPROG:=$(firstword $(MVPROG))
-endif
-endif
-export MVPROG
-ifndef ECHOREDIR
-ECHOREDIR:=$(subst /,$(PATHSEP),$(ECHO))
-endif
-ifndef COPY
-COPY:=$(CPPROG) -fp
-endif
-ifndef COPYTREE
-COPYTREE:=$(CPPROG) -rfp
-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=
-else
-PPUMOVE:=$(firstword $(PPUMOVE))
-endif
-endif
-export PPUMOVE
-ifndef FPCMAKE
-FPCMAKE:=$(strip $(wildcard $(addsuffix /fpcmake$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(FPCMAKE),)
-FPCMAKE=
-else
-FPCMAKE:=$(firstword $(FPCMAKE))
-endif
-endif
-export FPCMAKE
-ifndef ZIPPROG
-ZIPPROG:=$(strip $(wildcard $(addsuffix /zip$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(ZIPPROG),)
-ZIPPROG=
-else
-ZIPPROG:=$(firstword $(ZIPPROG))
-endif
-endif
-export ZIPPROG
-ifndef TARPROG
-TARPROG:=$(strip $(wildcard $(addsuffix /tar$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(TARPROG),)
-TARPROG=
-else
-TARPROG:=$(firstword $(TARPROG))
-endif
-endif
-export TARPROG
-ASNAME=as
-LDNAME=ld
-ARNAME=ar
-RCNAME=rc
-ifeq ($(OS_TARGET),win32)
-ASNAME=asw
-LDNAME=ldw
-ARNAME=arw
-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$(BATCHEXT)
-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=vI
-TAREXT=.tar.bz2
-else
-TAROPT=vz
-TAREXT=.tar.gz
-endif
-override REQUIRE_PACKAGES=rtl 
-ifeq ($(OS_TARGET),linux)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(OS_TARGET),go32v2)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(OS_TARGET),win32)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(OS_TARGET),os2)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(OS_TARGET),freebsd)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(OS_TARGET),beos)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(OS_TARGET),netbsd)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(OS_TARGET),amiga)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(OS_TARGET),atari)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(OS_TARGET),sunos)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(OS_TARGET),qnx)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifdef REQUIRE_PACKAGES_RTL
-PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
-ifneq ($(PACKAGEDIR_RTL),)
-ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
-UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
-else
-UNITDIR_RTL=$(PACKAGEDIR_RTL)
-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
-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
-ifeq ($(CPU_TARGET),i386)
-FPCCPUOPT:=-OG2p3
-else
-FPCCPUOPT:=
-endif
-override FPCOPT+=-Xs $(FPCCPUOPT) -n
-override FPCOPTDEF+=RELEASE
-endif
-ifdef STRIP
-override FPCOPT+=-Xs
-endif
-ifdef OPTIMIZE
-ifeq ($(CPU_TARGET),i386)
-override FPCOPT+=-OG2p3
-endif
-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 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 COMPILER:=$(FPC) $(FPCOPT)
-ifeq (,$(findstring -s ,$(COMPILER)))
-EXECPPAS=
-else
-ifeq ($(OS_SOURCE),$(OS_TARGET))
-EXECPPAS:=@$(PPAS)
-endif
-endif
-.PHONY: fpc_units
-ifdef 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: $(UNITPPUFILES)
-ifdef TARGET_RSTS
-override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS))
-override CLEANRSTFILES+=$(RSTFILES)
-endif
-.PHONY: fpc_examples
-ifdef TARGET_EXAMPLES
-HASEXAMPLES=1
-override EXAMPLESOURCEFILES:=$(wildcard $(addsuffix .pp,$(TARGET_EXAMPLES)) $(addsuffix .pas,$(TARGET_EXAMPLES)))
-override EXAMPLEFILES:=$(addsuffix $(EXEEXT),$(TARGET_EXAMPLES))
-override EXAMPLEOFILES:=$(addsuffix $(OEXT),$(TARGET_EXAMPLES)) $(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_EXAMPLES)))
-override CLEANEXEFILES+=$(EXAMPLEFILES) $(EXAMPLEOFILES)
-ifeq ($(OS_TARGET),os2)
-override CLEANEXEFILES+=$(addsuffix $(AOUTEXT),$(TARGET_EXAMPLES))
-endif
-endif
-ifdef TARGET_EXAMPLEDIRS
-HASEXAMPLES=1
-endif
-fpc_examples: all $(EXAMPLEFILES) $(addsuffix _all,$(TARGET_EXAMPLEDIRS))
-.PHONY: fpc_all fpc_smart fpc_debug fpc_release
-$(FPCMADE): $(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 .pp .rc .res
-%$(PPUEXT): %.pp
-	$(COMPILER) $<
-	$(EXECPPAS)
-%$(PPUEXT): %.pas
-	$(COMPILER) $<
-	$(EXECPPAS)
-%$(EXEEXT): %.pp
-	$(COMPILER) $<
-	$(EXECPPAS)
-%$(EXEEXT): %.pas
-	$(COMPILER) $<
-	$(EXECPPAS)
-%.res: %.rc
-	windres -i $< -o $@
-vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
-vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
-vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
-.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),$(INSTALLPPUFILES))
-endif
-ifdef INSTALLPPUFILES
-override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
-override INSTALLPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPUFILES))
-override INSTALLPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPULINKFILES)))
-override INSTALL_CREATEPACKAGEFPC=1
-endif
-ifdef INSTALLEXEFILES
-override INSTALLEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(INSTALLEXEFILES))
-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$(OS_TARGET) Makefile.fpc
-	$(MKDIR) $(INSTALL_UNITDIR)
-	$(INSTALL) Package.fpc $(INSTALL_UNITDIR)
-endif
-endif
-endif
-endif
-ifdef INSTALLPPUFILES
-	$(MKDIR) $(INSTALL_UNITDIR)
-	$(INSTALL) $(INSTALLPPUFILES) $(INSTALL_UNITDIR)
-ifneq ($(INSTALLPPULINKFILES),)
-	$(INSTALL) $(INSTALLPPULINKFILES) $(INSTALL_UNITDIR)
-endif
-ifneq ($(wildcard $(LIB_FULLNAME)),)
-	$(MKDIR) $(INSTALL_LIBDIR)
-	$(INSTALL) $(LIB_FULLNAME) $(INSTALL_LIBDIR)
-ifdef inUnix
-	ln -sf $(LIB_FULLNAME) $(INSTALL_LIBDIR)/$(LIB_NAME)
-endif
-endif
-endif
-ifdef INSTALL_FILES
-	$(MKDIR) $(INSTALL_DATADIR)
-	$(INSTALL) $(INSTALL_FILES) $(INSTALL_DATADIR)
-endif
-fpc_sourceinstall: distclean
-	$(MKDIR) $(INSTALL_SOURCEDIR)
-	$(COPYTREE) $(BASEDIR) $(INSTALL_SOURCEDIR)
-fpc_exampleinstall: $(addsuffix _distclean,$(TARGET_EXAMPLEDIRS))
-ifdef HASEXAMPLES
-	$(MKDIR) $(INSTALL_EXAMPLEDIR)
-endif
-ifdef EXAMPLESOURCEFILES
-	$(COPY) $(EXAMPLESOURCEFILES) $(INSTALL_EXAMPLEDIR)
-endif
-ifdef TARGET_EXAMPLEDIRS
-	$(COPYTREE) $(addsuffix /*,$(TARGET_EXAMPLEDIRS)) $(INSTALL_EXAMPLEDIR)
-endif
-.PHONY: fpc_distinstall
-fpc_distinstall: install exampleinstall
-.PHONY: fpc_zipinstall fpc_zipsourceinstall fpc_zipexampleinstall
-ifndef PACKDIR
-ifndef inUnix
-PACKDIR=$(BASEDIR)/../fpc-pack
-else
-PACKDIR=/tmp/fpc-pack
-endif
-endif
-ifndef ZIPNAME
-ifdef DIST_ZIPNAME
-ZIPNAME=$(DIST_ZIPNAME)
-else
-ZIPNAME=$(ZIPPREFIX)$(PACKAGE_NAME)$(ZIPSUFFIX)
-endif
-endif
-ifndef ZIPTARGET
-ifdef DIST_ZIPTARGET
-ZIPTARGET=DIST_ZIPTARGET
-else
-ZIPTARGET=install
-endif
-endif
-ifndef USEZIP
-ifdef inUnix
-USETAR=1
-endif
-endif
-ifndef inUnix
-USEZIPWRAPPER=1
-endif
-ifdef USEZIPWRAPPER
-ZIPPATHSEP=$(PATHSEP)
-ZIPWRAPPER=$(subst /,$(PATHSEP),$(DIST_DESTDIR)/fpczip$(BATCHEXT))
-else
-ZIPPATHSEP=/
-endif
-ZIPCMD_CDPACK:=cd $(subst /,$(ZIPPATHSEP),$(PACKDIR))
-ZIPCMD_CDBASE:=cd $(subst /,$(ZIPPATHSEP),$(BASEDIR))
-ifdef USETAR
-ZIPDESTFILE:=$(DIST_DESTDIR)/$(ZIPNAME)$(TAREXT)
-ZIPCMD_ZIP:=$(TARPROG) cf$(TAROPT) $(ZIPDESTFILE) *
-else
-ZIPDESTFILE:=$(DIST_DESTDIR)/$(ZIPNAME)$(ZIPEXT)
-ZIPCMD_ZIP:=$(subst /,$(ZIPPATHSEP),$(ZIPPROG)) -Dr $(ZIPOPT) $(ZIPDESTFILE) *
-endif
-fpc_zipinstall:
-	$(MAKE) $(ZIPTARGET) INSTALL_PREFIX=$(PACKDIR) ZIPINSTALL=1
-	$(MKDIR) $(DIST_DESTDIR)
-	$(DEL) $(ZIPDESTFILE)
-ifdef USEZIPWRAPPER
-ifneq ($(ECHOREDIR),echo)
-	$(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_CDPACK))" > $(ZIPWRAPPER)
-	$(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_ZIP))" >> $(ZIPWRAPPER)
-	$(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_CDBASE))" >> $(ZIPWRAPPER)
-else
-	echo $(ZIPCMD_CDPACK) > $(ZIPWRAPPER)
-	echo $(ZIPCMD_ZIP) >> $(ZIPWRAPPER)
-	echo $(ZIPCMD_CDBASE) >> $(ZIPWRAPPER)
-endif
-ifdef inUnix
-	/bin/sh $(ZIPWRAPPER)
-else
-	$(ZIPWRAPPER)
-endif
-	$(DEL) $(ZIPWRAPPER)
-else
-	$(ZIPCMD_CDPACK) ; $(ZIPCMD_ZIP) ; $(ZIPCMD_CDBASE)
-endif
-	$(DELTREE) $(PACKDIR)
-fpc_zipsourceinstall:
-	$(MAKE) fpc_zipinstall ZIPTARGET=sourceinstall ZIPSUFFIX=src
-fpc_zipexampleinstall:
-ifdef HASEXAMPLES
-	$(MAKE) fpc_zipinstall ZIPTARGET=exampleinstall ZIPSUFFIX=exm
-endif
-fpc_zipdistinstall:
-	$(MAKE) fpc_zipinstall ZIPTARGET=distinstall
-.PHONY: fpc_clean fpc_cleanall fpc_distclean
-ifdef EXEFILES
-override CLEANEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(CLEANEXEFILES))
-endif
-ifdef CLEAN_UNITS
-override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
-endif
-ifdef CLEANPPUFILES
-override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
-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)
-fpc_distclean: clean
-ifdef COMPILER_UNITTARGETDIR
-TARGETDIRCLEAN=fpc_clean
-endif
-fpc_cleanall: $(CLEANTARGET) $(TARGETDIRCLEAN)
-ifdef CLEANEXEFILES
-	-$(DEL) $(CLEANEXEFILES)
-endif
-	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
-	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
-ifdef AOUTEXT
-	-$(DEL) *$(AOUTEXT)
-endif
-.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 Target.. $(FULL_SOURCE)
-	@$(ECHO)  Full Source.. $(FULL_TARGET)
-	@$(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)  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)  ZipPrefix............ $(ZIPPREFIX)
-	@$(ECHO)  ZipSuffix............ $(ZIPSUFFIX)
-	@$(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
-examples: fpc_examples
-shared:
-install: fpc_install
-sourceinstall: fpc_sourceinstall
-exampleinstall: fpc_exampleinstall
-distinstall: fpc_distinstall
-zipinstall: fpc_zipinstall
-zipsourceinstall: fpc_zipsourceinstall
-zipexampleinstall: fpc_zipexampleinstall
-zipdistinstall: fpc_zipdistinstall
-clean: fpc_clean
-distclean: fpc_distclean
-cleanall: fpc_cleanall
-info: fpc_info
-makefiles: fpc_makefiles
-.PHONY: all debug smart release examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefiles
-ifneq ($(wildcard fpcmake.loc),)
-include fpcmake.loc
-endif

+ 0 - 17
packages/cmem/Makefile.fpc

@@ -1,17 +0,0 @@
-#
-#   Makefile.fpc for C Memory Manager
-#
-
-[package]
-name=cmem
-version=1.0.5
-
-[target]
-units=cmem
-examples=testcmem
-
-[install]
-fpcpackage=y
-
-[default]
-fpcdir=../..

+ 0 - 20
packages/cmem/README

@@ -1,20 +0,0 @@
-This directory contains a C memory manager unit. 
-
-The purpose of the cmem unit is simply to replace the standard Free Pascal
-memory manager by the memory manager of the C library.
-
-This has some drawbacks since the following calls are not supported then:
-MemSize
-HeapSize
-MemAvail
-MaxAvail
-This is because the C memory manager doesn't provide this functionality.
-
-To use the unit, put it as the *FIRST* unit in the 'uses' clause of
-your program. If it is not put first, some units may use the default 
-Free Pascal memory manager before the C memory manager is installed,
-thus possibly causing conflicts.
-
-Enjoy !
-
-Michael.

+ 0 - 127
packages/cmem/cmem.pp

@@ -1,127 +0,0 @@
-{
-    $Id$
-    This file is part of the Free Pascal run time library.
-    Copyright (c) 1999 by Michael Van Canneyt, member of the 
-    Free Pascal development team
-
-    Implements a memory manager that uses the C memory management.
-    
-    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 cmem;
-
-{$mode objfpc}
-
-interface
-
-Function Malloc (Size : Longint) : Pointer;cdecl; external 'c' name 'malloc';
-Procedure Free (P : pointer); cdecl; external 'c' name 'free';
-Procedure FreeMem (P : Pointer); cdecl; external 'c' name 'free';
-function ReAlloc (P : Pointer; Size : longint) : pointer; cdecl; external 'c' name 'realloc';
-Function CAlloc (unitSize,UnitCount : Longint) : pointer;cdecl;external 'c' name 'calloc';
-
-implementation
-
-Function CGetMem  (Size : Longint) : Pointer;
-
-begin
-  result:=Malloc(Size);
-end;
-
-Function CFreeMem (Var P : pointer) : Longint;
-
-begin
-  Free(P);
-  Result:=0;
-end;
-
-Function CFreeMemSize(var p:pointer;Size:Longint):Longint;
-
-begin
-  Result:=CFreeMem(P);
-end;
-
-Function CAllocMem(Size : Longint) : Pointer;
-
-begin
-  Result:=calloc(Size,1); 
-end;
-
-Function CReAllocMem (var p:pointer;Size:longint):Pointer;
-
-begin
-  p := realloc(p,size);
-  Result:=p;
-end;
-
-Function CMemSize (p:pointer): Longint;
-
-begin
-  Result:=0;
-end;
-
-Function CMemAvail : Longint;
-
-begin
-  Result:=0;
-end;
-
-Function CMaxAvail: Longint;
-
-begin
-  Result:=0;
-end;
-
-Function CHeapSize : Longint;
-
-begin
-  Result:=0;
-end;
-                    
-
-Const
- CMemoryManager : TMemoryManager =
-    (
-      GetMem : {$ifdef fpc}@{$endif}CGetmem;
-      FreeMem : {$ifdef fpc}@{$endif}CFreeMem;
-      FreememSize : {$ifdef fpc}@{$endif}CFreememSize;
-      AllocMem : {$ifdef fpc}@{$endif}CAllocMem;
-      ReallocMem : {$ifdef fpc}@{$endif}CReAllocMem;
-      MemSize : {$ifdef fpc}@{$endif}CMemSize;
-      MemAvail : {$ifdef fpc}@{$endif fpc}CMemAvail;
-      MaxAvail : {$ifdef fpc}@{$endif}MaxAvail;
-      HeapSize : {$ifdef fpc}@{$endif}CHeapSize;
-    );
-  
-Var 
-  OldMemoryManager : TMemoryManager;
-
-Initialization
-  GetMemoryManager (OldMemoryManager);
-  SetMemoryManager (CmemoryManager);
-  
-Finalization
-  SetMemoryManager (OldMemoryManager);
-end.
-
-{   
- $Log$
- Revision 1.5  2001-10-23 12:14:36  jonas
-   * fixed CReAllocMem (web bug 1637)
-
- Revision 1.4  2001/06/07 16:34:41  jonas
-   * added ifdef fpc round @ for procvars
-
- Revision 1.3  2001/06/07 16:14:48  marco
-  * Fixed @ procvar
-
-    Revision 1.2  2000/07/13 11:33:10  michael
-     + removed logs
- 
-}

+ 0 - 26
packages/cmem/testcmem.pp

@@ -1,26 +0,0 @@
-program testmem;
-
-{$mode objfpc}
-
-uses cmem;
-
-Type 
-  PLongint = ^Longint;
-
-Var P : PLongint;
-    i : longint;
-     
-begin
-  P:=GetMem(1000*SizeOf(Longint));
-  For I:=0 to 999 do
-    P[i]:=i;
-  P:=ReallocMem(P,500*SizeOf(Longint));
-  For I:=0 to 499 do  
-    if P[i]<>i Then
-      Writeln ('Oh-oh, ',i,'th index differs.');
-  FreeMem(P);    
-end.  $Log$
-end.  Revision 1.2  2000-07-13 11:33:11  michael
-end.  + removed logs
-end. 
-}

+ 0 - 1343
packages/forms/Makefile

@@ -1,1343 +0,0 @@
-#
-# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/27]
-#
-default: all
-MAKEFILETARGETS=linux go32v2 win32 os2 freebsd beos netbsd amiga atari sunos qnx
-override PATH:=$(subst \,/,$(PATH))
-ifeq ($(findstring ;,$(PATH)),)
-inUnix=1
-SEARCHPATH:=$(filter-out .,$(subst :, ,$(PATH)))
-else
-SEARCHPATH:=$(subst ;, ,$(PATH))
-endif
-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 cygwin,$(MACHTYPE)),)
-inCygWin=1
-endif
-endif
-ifeq ($(OS_TARGET),freebsd)
-BSDhier=1
-endif
-ifeq ($(OS_TARGET),netbsd)
-BSDhier=1
-endif
-ifdef inUnix
-BATCHEXT=.sh
-else
-ifdef inOS2
-BATCHEXT=.cmd
-else
-BATCHEXT=.bat
-endif
-endif
-ifdef inUnix
-PATHSEP=/
-else
-PATHSEP:=$(subst /,\,/)
-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
-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=ppc386
-endif
-else
-override FPC=ppc386
-endif
-endif
-override FPC:=$(subst $(SRCEXEEXT),,$(FPC))
-override FPC:=$(subst \,/,$(FPC))$(SRCEXEEXT)
-ifndef FPC_VERSION
-FPC_VERSION:=$(shell $(FPC) -iV)
-endif
-export FPC FPC_VERSION
-ifeq ($(findstring 1.0.,$(FPC_VERSION)),)
-COMPILERINFO:=$(shell $(FPC) -iSP -iTP -iSO -iTO)
-ifndef CPU_SOURCE
-CPU_SOURCE:=$(word 1,$(COMPILERINFO))
-endif
-ifndef CPU_TARGET
-CPU_TARGET:=$(word 2,$(COMPILERINFO))
-endif
-ifndef OS_SOURCE
-OS_SOURCE:=$(word 3,$(COMPILERINFO))
-endif
-ifndef OS_TARGET
-OS_TARGET:=$(word 4,$(COMPILERINFO))
-endif
-else
-ifndef CPU_SOURCE
-CPU_SOURCE:=$(shell $(FPC) -iSP)
-endif
-ifndef CPU_TARGET
-CPU_TARGET:=$(shell $(FPC) -iTP)
-endif
-ifndef OS_SOURCE
-OS_SOURCE:=$(shell $(FPC) -iSO)
-endif
-ifndef OS_TARGET
-OS_TARGET:=$(shell $(FPC) -iTO)
-endif
-endif
-FULL_TARGET=$(CPU_TARGET)-$(OS_TARGET)
-FULL_SOURCE=$(CPU_SOURCE)-$(OS_SOURCE)
-ifneq ($(FULL_TARGET),$(FULL_SOURCE))
-CROSSCOMPILE=1
-endif
-ifeq ($(findstring makefile,$(MAKECMDGOALS)),)
-ifeq ($(findstring $(OS_TARGET),$(MAKEFILETARGETS)),)
-$(error The Makefile doesn't support target $(OS_TARGET), please run fpcmake first)
-endif
-endif
-export OS_TARGET OS_SOURCE CPU_TARGET CPU_SOURCE FULL_TARGET FULL_SOURCE 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=c:/pp
-endif
-endif
-endif
-endif
-ifndef CROSSDIR
-CROSSDIR:=$(FPCDIR)/cross/$(FULL_TARGET)
-endif
-ifndef CROSSTARGETDIR
-CROSSTARGETDIR=$(CROSSDIR)/$(FULL_TARGET)
-endif
-ifdef CROSSCOMPILE
-UNITSDIR:=$(wildcard $(CROSSTARGETDIR)/units)
-ifeq ($(UNITSDIR),)
-UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
-endif
-else
-UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
-endif
-PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages)
-override PACKAGE_NAME=forms
-override PACKAGE_VERSION=1.0.5
-override TARGET_PROGRAMS+=fd2pascal
-override TARGET_UNITS+=forms
-override TARGET_EXAMPLEDIRS+=demo
-override INSTALL_FPCPACKAGE=y
-ifdef REQUIRE_UNITSDIR
-override UNITSDIR+=$(REQUIRE_UNITSDIR)
-endif
-ifdef REQUIRE_PACKAGESDIR
-override PACKAGESDIR+=$(REQUIRE_PACKAGESDIR)
-endif
-ifdef ZIPINSTALL
-ifeq ($(OS_TARGET),linux)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_TARGET),freebsd)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_TARGET),netbsd)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_TARGET),sunos)
-UNIXINSTALLDIR=1
-endif
-else
-ifeq ($(OS_SOURCE),linux)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_SOURCE),freebsd)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_SOURCE),netbsd)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_TARGET),sunos)
-UNIXINSTALLDIR=1
-endif
-endif
-ifndef INSTALL_PREFIX
-ifdef PREFIX
-INSTALL_PREFIX=$(PREFIX)
-endif
-endif
-ifndef INSTALL_PREFIX
-ifdef UNIXINSTALLDIR
-INSTALL_PREFIX=/usr/local
-else
-ifdef INSTALL_FPCPACKAGE
-INSTALL_BASEDIR:=/pp
-else
-INSTALL_BASEDIR:=/$(PACKAGE_NAME)
-endif
-endif
-endif
-export INSTALL_PREFIX
-ifndef DIST_DESTDIR
-DIST_DESTDIR:=$(BASEDIR)
-endif
-export DIST_DESTDIR
-ifndef INSTALL_BASEDIR
-ifdef UNIXINSTALLDIR
-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 UNIXINSTALLDIR
-INSTALL_BINDIR:=$(INSTALL_PREFIX)/bin
-else
-INSTALL_BINDIR:=$(INSTALL_BASEDIR)/bin
-ifdef INSTALL_FPCPACKAGE
-INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(OS_TARGET)
-endif
-endif
-endif
-ifndef INSTALL_UNITDIR
-ifdef CROSSCOMPILE
-INSTALL_UNITDIR:=$(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/units
-else
-INSTALL_UNITDIR:=$(INSTALL_BASEDIR)/units/$(OS_TARGET)
-endif
-ifdef INSTALL_FPCPACKAGE
-ifdef PACKAGE_NAME
-INSTALL_UNITDIR:=$(INSTALL_UNITDIR)/$(PACKAGE_NAME)
-endif
-endif
-endif
-ifndef INSTALL_LIBDIR
-ifdef UNIXINSTALLDIR
-INSTALL_LIBDIR:=$(INSTALL_PREFIX)/lib
-else
-INSTALL_LIBDIR:=$(INSTALL_UNITDIR)
-endif
-endif
-ifndef INSTALL_SOURCEDIR
-ifdef UNIXINSTALLDIR
-ifdef INSTALL_FPCPACKAGE
-ifdef BSDhier
-INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/share/src/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-else
-INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/src/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-endif
-else
-ifdef BSDhier
-INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/share/src/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-else
-INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/src/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-endif
-endif
-else
-ifdef INSTALL_FPCPACKAGE
-INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source/$(PACKAGE_NAME)
-else
-INSTALL_SOURCEDIRL:=$(INSTALL_BASEDIR)/source
-endif
-endif
-endif
-ifndef INSTALL_DOCDIR
-ifdef UNIXINSTALLDIR
-ifdef INSTALL_FPCPACKAGE
-ifdef BSDhier
-INSTALL_DOCDIR:=$(INSTALL_PREFIX)/share/doc/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-else
-INSTALL_DOCDIR:=$(INSTALL_PREFIX)/doc/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-endif
-else
-ifdef BSDhier
-INSTALL_DOCDIR:=$(INSTALL_PREFIX)/share/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-else
-INSTALL_DOCDIR:=$(INSTALL_PREFIX)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-endif
-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 UNIXINSTALLDIR
-ifdef INSTALL_FPCPACKAGE
-ifdef BSDhier
-INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-else
-INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/fpc-$(FPC_VERSION)/examples/$(PACKAGE_NAME)
-endif
-else
-ifdef BSDhier
-INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-else
-INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-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
-ifdef CROSSCOMPILE
-ifndef CROSSBINDIR
-CROSSBINDIR:=$(wildcard $(CROSSTARGETDIR)/bin/$(FULL_SOURCE))
-ifeq ($(CROSSBINDIR),)
-CROSSBINDIR:=$(wildcard $(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/bin/$(FULL_SOURCE))
-endif
-endif
-else
-CROSSBINDIR=
-endif
-ifdef inUnix
-ifndef GCCLIBDIR
-GCCLIBDIR:=$(shell dirname `(gcc -v 2>&1)| head -n 1| awk '{ print $$4 } '`)
-endif
-ifeq ($(OS_TARGET),linux)
-ifndef OTHERLIBDIR
-OTHERLIBDIR:=$(shell grep -v "^\#" /etc/ld.so.conf | awk '{ ORS=" "; print $1 }')
-endif
-endif
-ifeq ($(OS_TARGET),netbsd)
-OTHERLIBDIR+=/usr/pkg/lib
-endif
-export GCCLIBDIR OTHERLIB
-endif
-LOADEREXT=.as
-EXEEXT=.exe
-PPLEXT=.ppl
-PPUEXT=.ppu
-OEXT=.o
-ASMEXT=.s
-SMARTEXT=.sl
-STATICLIBEXT=.a
-SHAREDLIBEXT=.so
-STATICLIBPREFIX=libp
-RSTEXT=.rst
-FPCMADE=fpcmade
-ifeq ($(OS_TARGET),go32v1)
-PPUEXT=.pp1
-OEXT=.o1
-ASMEXT=.s1
-SMARTEXT=.sl1
-STATICLIBEXT=.a1
-SHAREDLIBEXT=.so1
-STATICLIBPREFIX=
-FPCMADE=fpcmade.v1
-PACKAGESUFFIX=v1
-endif
-ifeq ($(OS_TARGET),go32v2)
-STATICLIBPREFIX=
-FPCMADE=fpcmade.dos
-ZIPSUFFIX=go32
-endif
-ifeq ($(OS_TARGET),linux)
-EXEEXT=
-HASSHAREDLIB=1
-FPCMADE=fpcmade.lnx
-ZIPSUFFIX=linux
-endif
-ifeq ($(OS_TARGET),freebsd)
-EXEEXT=
-HASSHAREDLIB=1
-FPCMADE=fpcmade.freebsd
-ZIPSUFFIX=freebsd
-endif
-ifeq ($(OS_TARGET),netbsd)
-EXEEXT=
-HASSHAREDLIB=1
-FPCMADE=fpcmade.netbsd
-ZIPSUFFIX=netbsd
-endif
-ifeq ($(OS_TARGET),win32)
-PPUEXT=.ppw
-OEXT=.ow
-ASMEXT=.sw
-SMARTEXT=.slw
-STATICLIBEXT=.aw
-SHAREDLIBEXT=.dll
-FPCMADE=fpcmade.w32
-ZIPSUFFIX=w32
-endif
-ifeq ($(OS_TARGET),os2)
-PPUEXT=.ppo
-ASMEXT=.so2
-OEXT=.oo2
-AOUTEXT=.out
-SMARTEXT=.so
-STATICLIBEXT=.ao2
-SHAREDLIBEXT=.dll
-FPCMADE=fpcmade.os2
-ZIPSUFFIX=emx
-endif
-ifeq ($(OS_TARGET),amiga)
-EXEEXT=
-PPUEXT=.ppa
-ASMEXT=.asm
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-SHAREDLIBEXT=.library
-FPCMADE=fpcmade.amg
-endif
-ifeq ($(OS_TARGET),atari)
-PPUEXT=.ppt
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=.ttp
-FPCMADE=fpcmade.ata
-endif
-ifeq ($(OS_TARGET),beos)
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=
-FPCMADE=fpcmade.be
-ZIPSUFFIX=be
-endif
-ifeq ($(OS_TARGET),sunos)
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=
-FPCMADE=fpcmade.sun
-ZIPSUFFIX=sun
-endif
-ifeq ($(OS_TARGET),qnx)
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=
-FPCMADE=fpcmade.qnx
-ZIPSUFFIX=qnx
-endif
-ifndef ECHO
-ECHO:=$(strip $(wildcard $(addsuffix /gecho$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(ECHO),)
-ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(ECHO),)
-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=
-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=
-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=
-else
-CPPROG:=$(firstword $(CPPROG))
-endif
-endif
-export CPPROG
-ifndef RMPROG
-RMPROG:=$(strip $(wildcard $(addsuffix /rm$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(RMPROG),)
-RMPROG=
-else
-RMPROG:=$(firstword $(RMPROG))
-endif
-endif
-export RMPROG
-ifndef MVPROG
-MVPROG:=$(strip $(wildcard $(addsuffix /mv$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(MVPROG),)
-MVPROG=
-else
-MVPROG:=$(firstword $(MVPROG))
-endif
-endif
-export MVPROG
-ifndef ECHOREDIR
-ECHOREDIR:=$(subst /,$(PATHSEP),$(ECHO))
-endif
-ifndef COPY
-COPY:=$(CPPROG) -fp
-endif
-ifndef COPYTREE
-COPYTREE:=$(CPPROG) -rfp
-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=
-else
-PPUMOVE:=$(firstword $(PPUMOVE))
-endif
-endif
-export PPUMOVE
-ifndef FPCMAKE
-FPCMAKE:=$(strip $(wildcard $(addsuffix /fpcmake$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(FPCMAKE),)
-FPCMAKE=
-else
-FPCMAKE:=$(firstword $(FPCMAKE))
-endif
-endif
-export FPCMAKE
-ifndef ZIPPROG
-ZIPPROG:=$(strip $(wildcard $(addsuffix /zip$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(ZIPPROG),)
-ZIPPROG=
-else
-ZIPPROG:=$(firstword $(ZIPPROG))
-endif
-endif
-export ZIPPROG
-ifndef TARPROG
-TARPROG:=$(strip $(wildcard $(addsuffix /tar$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(TARPROG),)
-TARPROG=
-else
-TARPROG:=$(firstword $(TARPROG))
-endif
-endif
-export TARPROG
-ASNAME=as
-LDNAME=ld
-ARNAME=ar
-RCNAME=rc
-ifeq ($(OS_TARGET),win32)
-ASNAME=asw
-LDNAME=ldw
-ARNAME=arw
-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$(BATCHEXT)
-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=vI
-TAREXT=.tar.bz2
-else
-TAROPT=vz
-TAREXT=.tar.gz
-endif
-override REQUIRE_PACKAGES=rtl x11
-ifeq ($(OS_TARGET),linux)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_X11=1
-endif
-ifeq ($(OS_TARGET),go32v2)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_X11=1
-endif
-ifeq ($(OS_TARGET),win32)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_X11=1
-endif
-ifeq ($(OS_TARGET),os2)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_X11=1
-endif
-ifeq ($(OS_TARGET),freebsd)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_X11=1
-endif
-ifeq ($(OS_TARGET),beos)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_X11=1
-endif
-ifeq ($(OS_TARGET),netbsd)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_X11=1
-endif
-ifeq ($(OS_TARGET),amiga)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_X11=1
-endif
-ifeq ($(OS_TARGET),atari)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_X11=1
-endif
-ifeq ($(OS_TARGET),sunos)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_X11=1
-endif
-ifeq ($(OS_TARGET),qnx)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_X11=1
-endif
-ifdef REQUIRE_PACKAGES_RTL
-PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
-ifneq ($(PACKAGEDIR_RTL),)
-ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
-UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
-else
-UNITDIR_RTL=$(PACKAGEDIR_RTL)
-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_X11
-PACKAGEDIR_X11:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /x11/Makefile.fpc,$(PACKAGESDIR))))))
-ifneq ($(PACKAGEDIR_X11),)
-ifneq ($(wildcard $(PACKAGEDIR_X11)/$(OS_TARGET)),)
-UNITDIR_X11=$(PACKAGEDIR_X11)/$(OS_TARGET)
-else
-UNITDIR_X11=$(PACKAGEDIR_X11)
-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
-ifndef NOCPUDEF
-override FPCOPTDEF=$(CPU_TARGET)
-endif
-ifneq ($(OS_TARGET),$(OS_SOURCE))
-override FPCOPT+=-T$(OS_TARGET)
-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
-ifeq ($(CPU_TARGET),i386)
-FPCCPUOPT:=-OG2p3
-else
-FPCCPUOPT:=
-endif
-override FPCOPT+=-Xs $(FPCCPUOPT) -n
-override FPCOPTDEF+=RELEASE
-endif
-ifdef STRIP
-override FPCOPT+=-Xs
-endif
-ifdef OPTIMIZE
-ifeq ($(CPU_TARGET),i386)
-override FPCOPT+=-OG2p3
-endif
-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 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 COMPILER:=$(FPC) $(FPCOPT)
-ifeq (,$(findstring -s ,$(COMPILER)))
-EXECPPAS=
-else
-ifeq ($(OS_SOURCE),$(OS_TARGET))
-EXECPPAS:=@$(PPAS)
-endif
-endif
-.PHONY: fpc_units
-ifdef 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: $(UNITPPUFILES)
-.PHONY: fpc_exes
-ifdef TARGET_PROGRAMS
-override EXEFILES=$(addsuffix $(EXEEXT),$(TARGET_PROGRAMS))
-override EXEOFILES:=$(addsuffix $(OEXT),$(TARGET_PROGRAMS)) $(addprefix $(STATICLIBPREFIX),$(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
-endif
-fpc_exes: $(EXEFILES)
-ifdef TARGET_RSTS
-override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS))
-override CLEANRSTFILES+=$(RSTFILES)
-endif
-.PHONY: fpc_examples
-ifdef TARGET_EXAMPLES
-HASEXAMPLES=1
-override EXAMPLESOURCEFILES:=$(wildcard $(addsuffix .pp,$(TARGET_EXAMPLES)) $(addsuffix .pas,$(TARGET_EXAMPLES)))
-override EXAMPLEFILES:=$(addsuffix $(EXEEXT),$(TARGET_EXAMPLES))
-override EXAMPLEOFILES:=$(addsuffix $(OEXT),$(TARGET_EXAMPLES)) $(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_EXAMPLES)))
-override CLEANEXEFILES+=$(EXAMPLEFILES) $(EXAMPLEOFILES)
-ifeq ($(OS_TARGET),os2)
-override CLEANEXEFILES+=$(addsuffix $(AOUTEXT),$(TARGET_EXAMPLES))
-endif
-endif
-ifdef TARGET_EXAMPLEDIRS
-HASEXAMPLES=1
-endif
-fpc_examples: all $(EXAMPLEFILES) $(addsuffix _all,$(TARGET_EXAMPLEDIRS))
-.PHONY: fpc_all fpc_smart fpc_debug fpc_release
-$(FPCMADE): $(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 .pp .rc .res
-%$(PPUEXT): %.pp
-	$(COMPILER) $<
-	$(EXECPPAS)
-%$(PPUEXT): %.pas
-	$(COMPILER) $<
-	$(EXECPPAS)
-%$(EXEEXT): %.pp
-	$(COMPILER) $<
-	$(EXECPPAS)
-%$(EXEEXT): %.pas
-	$(COMPILER) $<
-	$(EXECPPAS)
-%.res: %.rc
-	windres -i $< -o $@
-vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
-vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
-vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
-.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),$(INSTALLPPUFILES))
-endif
-ifdef INSTALLPPUFILES
-override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
-override INSTALLPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPUFILES))
-override INSTALLPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPULINKFILES)))
-override INSTALL_CREATEPACKAGEFPC=1
-endif
-ifdef INSTALLEXEFILES
-override INSTALLEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(INSTALLEXEFILES))
-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$(OS_TARGET) Makefile.fpc
-	$(MKDIR) $(INSTALL_UNITDIR)
-	$(INSTALL) Package.fpc $(INSTALL_UNITDIR)
-endif
-endif
-endif
-endif
-ifdef INSTALLPPUFILES
-	$(MKDIR) $(INSTALL_UNITDIR)
-	$(INSTALL) $(INSTALLPPUFILES) $(INSTALL_UNITDIR)
-ifneq ($(INSTALLPPULINKFILES),)
-	$(INSTALL) $(INSTALLPPULINKFILES) $(INSTALL_UNITDIR)
-endif
-ifneq ($(wildcard $(LIB_FULLNAME)),)
-	$(MKDIR) $(INSTALL_LIBDIR)
-	$(INSTALL) $(LIB_FULLNAME) $(INSTALL_LIBDIR)
-ifdef inUnix
-	ln -sf $(LIB_FULLNAME) $(INSTALL_LIBDIR)/$(LIB_NAME)
-endif
-endif
-endif
-ifdef INSTALL_FILES
-	$(MKDIR) $(INSTALL_DATADIR)
-	$(INSTALL) $(INSTALL_FILES) $(INSTALL_DATADIR)
-endif
-fpc_sourceinstall: distclean
-	$(MKDIR) $(INSTALL_SOURCEDIR)
-	$(COPYTREE) $(BASEDIR) $(INSTALL_SOURCEDIR)
-fpc_exampleinstall: $(addsuffix _distclean,$(TARGET_EXAMPLEDIRS))
-ifdef HASEXAMPLES
-	$(MKDIR) $(INSTALL_EXAMPLEDIR)
-endif
-ifdef EXAMPLESOURCEFILES
-	$(COPY) $(EXAMPLESOURCEFILES) $(INSTALL_EXAMPLEDIR)
-endif
-ifdef TARGET_EXAMPLEDIRS
-	$(COPYTREE) $(addsuffix /*,$(TARGET_EXAMPLEDIRS)) $(INSTALL_EXAMPLEDIR)
-endif
-.PHONY: fpc_distinstall
-fpc_distinstall: install exampleinstall
-.PHONY: fpc_zipinstall fpc_zipsourceinstall fpc_zipexampleinstall
-ifndef PACKDIR
-ifndef inUnix
-PACKDIR=$(BASEDIR)/../fpc-pack
-else
-PACKDIR=/tmp/fpc-pack
-endif
-endif
-ifndef ZIPNAME
-ifdef DIST_ZIPNAME
-ZIPNAME=$(DIST_ZIPNAME)
-else
-ZIPNAME=$(ZIPPREFIX)$(PACKAGE_NAME)$(ZIPSUFFIX)
-endif
-endif
-ifndef ZIPTARGET
-ifdef DIST_ZIPTARGET
-ZIPTARGET=DIST_ZIPTARGET
-else
-ZIPTARGET=install
-endif
-endif
-ifndef USEZIP
-ifdef inUnix
-USETAR=1
-endif
-endif
-ifndef inUnix
-USEZIPWRAPPER=1
-endif
-ifdef USEZIPWRAPPER
-ZIPPATHSEP=$(PATHSEP)
-ZIPWRAPPER=$(subst /,$(PATHSEP),$(DIST_DESTDIR)/fpczip$(BATCHEXT))
-else
-ZIPPATHSEP=/
-endif
-ZIPCMD_CDPACK:=cd $(subst /,$(ZIPPATHSEP),$(PACKDIR))
-ZIPCMD_CDBASE:=cd $(subst /,$(ZIPPATHSEP),$(BASEDIR))
-ifdef USETAR
-ZIPDESTFILE:=$(DIST_DESTDIR)/$(ZIPNAME)$(TAREXT)
-ZIPCMD_ZIP:=$(TARPROG) cf$(TAROPT) $(ZIPDESTFILE) *
-else
-ZIPDESTFILE:=$(DIST_DESTDIR)/$(ZIPNAME)$(ZIPEXT)
-ZIPCMD_ZIP:=$(subst /,$(ZIPPATHSEP),$(ZIPPROG)) -Dr $(ZIPOPT) $(ZIPDESTFILE) *
-endif
-fpc_zipinstall:
-	$(MAKE) $(ZIPTARGET) INSTALL_PREFIX=$(PACKDIR) ZIPINSTALL=1
-	$(MKDIR) $(DIST_DESTDIR)
-	$(DEL) $(ZIPDESTFILE)
-ifdef USEZIPWRAPPER
-ifneq ($(ECHOREDIR),echo)
-	$(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_CDPACK))" > $(ZIPWRAPPER)
-	$(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_ZIP))" >> $(ZIPWRAPPER)
-	$(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_CDBASE))" >> $(ZIPWRAPPER)
-else
-	echo $(ZIPCMD_CDPACK) > $(ZIPWRAPPER)
-	echo $(ZIPCMD_ZIP) >> $(ZIPWRAPPER)
-	echo $(ZIPCMD_CDBASE) >> $(ZIPWRAPPER)
-endif
-ifdef inUnix
-	/bin/sh $(ZIPWRAPPER)
-else
-	$(ZIPWRAPPER)
-endif
-	$(DEL) $(ZIPWRAPPER)
-else
-	$(ZIPCMD_CDPACK) ; $(ZIPCMD_ZIP) ; $(ZIPCMD_CDBASE)
-endif
-	$(DELTREE) $(PACKDIR)
-fpc_zipsourceinstall:
-	$(MAKE) fpc_zipinstall ZIPTARGET=sourceinstall ZIPSUFFIX=src
-fpc_zipexampleinstall:
-ifdef HASEXAMPLES
-	$(MAKE) fpc_zipinstall ZIPTARGET=exampleinstall ZIPSUFFIX=exm
-endif
-fpc_zipdistinstall:
-	$(MAKE) fpc_zipinstall ZIPTARGET=distinstall
-.PHONY: fpc_clean fpc_cleanall fpc_distclean
-ifdef EXEFILES
-override CLEANEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(CLEANEXEFILES))
-endif
-ifdef CLEAN_UNITS
-override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
-endif
-ifdef CLEANPPUFILES
-override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
-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)
-fpc_distclean: clean
-ifdef COMPILER_UNITTARGETDIR
-TARGETDIRCLEAN=fpc_clean
-endif
-fpc_cleanall: $(CLEANTARGET) $(TARGETDIRCLEAN)
-ifdef CLEANEXEFILES
-	-$(DEL) $(CLEANEXEFILES)
-endif
-	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
-	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
-ifdef AOUTEXT
-	-$(DEL) *$(AOUTEXT)
-endif
-.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 Target.. $(FULL_SOURCE)
-	@$(ECHO)  Full Source.. $(FULL_TARGET)
-	@$(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)  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)  ZipPrefix............ $(ZIPPREFIX)
-	@$(ECHO)  ZipSuffix............ $(ZIPSUFFIX)
-	@$(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
-TARGET_EXAMPLEDIRS_DEMO=1
-ifdef TARGET_EXAMPLEDIRS_DEMO
-demo_all:
-	$(MAKE) -C demo all
-demo_debug:
-	$(MAKE) -C demo debug
-demo_smart:
-	$(MAKE) -C demo smart
-demo_release:
-	$(MAKE) -C demo release
-demo_examples:
-	$(MAKE) -C demo examples
-demo_shared:
-	$(MAKE) -C demo shared
-demo_install:
-	$(MAKE) -C demo install
-demo_sourceinstall:
-	$(MAKE) -C demo sourceinstall
-demo_exampleinstall:
-	$(MAKE) -C demo exampleinstall
-demo_distinstall:
-	$(MAKE) -C demo distinstall
-demo_zipinstall:
-	$(MAKE) -C demo zipinstall
-demo_zipsourceinstall:
-	$(MAKE) -C demo zipsourceinstall
-demo_zipexampleinstall:
-	$(MAKE) -C demo zipexampleinstall
-demo_zipdistinstall:
-	$(MAKE) -C demo zipdistinstall
-demo_clean:
-	$(MAKE) -C demo clean
-demo_distclean:
-	$(MAKE) -C demo distclean
-demo_cleanall:
-	$(MAKE) -C demo cleanall
-demo_info:
-	$(MAKE) -C demo info
-demo_makefiles:
-	$(MAKE) -C demo makefiles
-demo:
-	$(MAKE) -C demo all
-.PHONY: demo_all demo_debug demo_smart demo_release demo_examples demo_shared demo_install demo_sourceinstall demo_exampleinstall demo_distinstall demo_zipinstall demo_zipsourceinstall demo_zipexampleinstall demo_zipdistinstall demo_clean demo_distclean demo_cleanall demo_info demo_makefiles demo
-endif
-all: fpc_all
-debug: fpc_debug
-smart: fpc_smart
-release: fpc_release
-examples: fpc_examples
-shared:
-install: fpc_install
-sourceinstall: fpc_sourceinstall
-exampleinstall: fpc_exampleinstall
-distinstall: fpc_distinstall
-zipinstall: fpc_zipinstall
-zipsourceinstall: fpc_zipsourceinstall
-zipexampleinstall: fpc_zipexampleinstall
-zipdistinstall: fpc_zipdistinstall
-clean: fpc_clean $(addsuffix _clean,$(TARGET_EXAMPLEDIRS))
-distclean: fpc_distclean
-cleanall: fpc_cleanall
-info: fpc_info
-makefiles: fpc_makefiles
-.PHONY: all debug smart release examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefiles
-ifneq ($(wildcard fpcmake.loc),)
-include fpcmake.loc
-endif

+ 0 - 22
packages/forms/Makefile.fpc

@@ -1,22 +0,0 @@
-#
-#   Makefile.fpc for Forms Bindings
-#
-
-[package]
-name=forms
-version=1.0.5
-
-[target]
-units=forms
-programs=fd2pascal
-exampledirs=demo
-
-[require]
-packages=x11
-libc=y
-
-[install]
-fpcpackage=y
-
-[default]
-fpcdir=../..

+ 0 - 38
packages/forms/README

@@ -1,38 +0,0 @@
-FPKPascal XForms support.
--------------------------
-
-To compile the units in this directory, proceed as follows:
-
-0. You need an installed forms library. You need to know where it is
-   installed. Either version 0.86 or 0.88 will do. For version 0.88
-   you need version 0.99.8 or higher of the compiler.
-
-2. Edit the Makefile in the current directory . You have to specify:
-   - which version of the forms library you use (0.86 or 0.88)
-   - The place of the forms library. (if not in /usr/lib).
-   - The place of the X library. (should be /usr/X11/lib)
-   - Where you want the forms libraries installed.
-   - Where you want the fd2pascal filter installed.
-   - Optionally, the path to the compiler and the pascal units.
-
-3. You should be all set to compile. type 
-    make all 
-   This will compile all the needed units, and the fd2pascal program which
-   translates .fd design files to pascal programs.
-   As of version 0.88, the fdesign program can directly issue pascal
-   code if you have fd2pascal installed.
-
-4. To compile the demo programs, type (still in the forms directory)
-    make demo     
-   This will compile all the demo programs in the demo subdirectory.
-
-5. To install the units and the fd2pascal program, type 
-    make install
-   This will install all units and the program in the directories you 
-   specified. They will be created if they don't exist.
-
-More information on all this can be found on 
-  http://tfdec1.fys.kuleuven.ac.be/~michael/fpc-linux/forms.html
-
-Enjoy !
-Michael Van Canneyt ([email protected])

+ 0 - 67
packages/forms/USAGE

@@ -1,67 +0,0 @@
-The usage of the forms library is relatively straightforward.
-
-The interface has been designed as follows:
-
-- All functions and procedures have kept their names.
-- All types have a T appended in front of it.
-  If the forms manual speaks of a FL_OBJECT type, then the FPK port
-  has a TFL_OBJECT type.
-  (This is because of pascal's CaSe InSenSiTiViTy)
-- Pointers to all objects have been defined as Ptype_of_object.
-  In C   : FL_OBJECT *
-  in FPK : PFL_OBJECT = ^TFL_OBJECT
-- All 'int' declarations are 'longint' in fpkpascal.
-
-Check out the 'demo' directory for examples.
-
-Some fields of some structs have been renamed (fields as 'label' or 'type')
-when they were in conflict with Pascal reserved words. Unfortunately this
-has not been done in a consistent way. This will change in the future,
-hopefully. As a rule of thumb : reserved pascal words got the prefix 'the',
-so 'type' became 'thetype' etc.
-
-When in doubt : consult the interface part of 'forms.pp'
-
-How to compile an executable ?
-
-Easy as pie:
-The only thing that you must remember is to provide the linker with the
-path to the X-libraries, and the form libraries. You can set this through
-the '-k' option of -Fl option. 
- 
-ppc386 -k-L/usr/X11/lib myprog.pp
-or
-ppc386 -Fl/usr/X11/lib myprog.pp
-
-Will do the trick in most cases.
-
-
-DESIGNING A FORM
-================
-
-As of version 0.88 of xforms, fdesign supports pascal directly !
-Using version 0.86, you can use the workaround described below:
-
-You can convert existing design programs as follows:
-version 0.86:
-  fdesign [other options] -convert -ada -filter fd2pascal file.fd
-version 0.88:
-  fdesign [other options] -convert -pascal file.fd
-
-or start a new design with
-version 0.86:
-  fdesign -ada -filter fd2pascal
-version 0.88:
-  fdesign -pascal
-
-This will emit pascal code. Use the following options
- -callback
-   to emit procedure headers.
- -main
-   to emit a program instead of a unit
- -altformat
-   to use global variables instead of records.
-
-Enjoy !
-
-Michael Van Canneyt ([email protected])

+ 0 - 117
packages/forms/cursorfont.inc

@@ -1,117 +0,0 @@
-{ $XConsortium: cursorfont.h,v 1.4 94/04/17 20:22:00 rws Exp $ }
-{
-
-Copyright (c) 1987  X Consortium
-
-Permission is hereby granted, free of charge, to any person obtaining
-a copy of this software and associated documentation files (the
-"Software"), to deal in the Software without restriction, including
-without limitation the rights to use, copy, modify, merge, publish,
-distribute, sublicense, and/or sell copies of the Software, and to
-permit persons to whom the Software is furnished to do so, subject to
-the following conditions:
-
-The above copyright notice and this permission notice shall be included
-in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-IN NO EVENT SHALL THE X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR
-OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
-ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
-OTHER DEALINGS IN THE SOFTWARE.
-
-Except as contained in this notice, the name of the X Consortium shall
-not be used in advertising or otherwise to promote the sale, use or
-other dealings in this Software without prior written authorization
-from the X Consortium.
-
-}
-
-Const
-  XC_num_glyphs= 154;
-  XC_X_cursor= 0;
-  XC_arrow= 2;
-  XC_based_arrow_down= 4;
-  XC_based_arrow_up= 6;
-  XC_boat= 8;
-  XC_bogosity= 10;
-  XC_bottom_left_corner= 12;
-  XC_bottom_right_corner= 14;
-  XC_bottom_side= 16;
-  XC_bottom_tee= 18;
-  XC_box_spiral= 20;
-  XC_center_ptr= 22;
-  XC_circle= 24;
-  XC_clock= 26;
-  XC_coffee_mug= 28;
-  XC_cross= 30;
-  XC_cross_reverse= 32;
-  XC_crosshair= 34;
-  XC_diamond_cross= 36;
-  XC_dot= 38;
-  XC_dotbox= 40;
-  XC_double_arrow= 42;
-  XC_draft_large= 44;
-  XC_draft_small= 46;
-  XC_draped_box= 48;
-  XC_exchange= 50;
-  XC_fleur= 52;
-  XC_gobbler= 54;
-  XC_gumby= 56;
-  XC_hand1= 58;
-  XC_hand2= 60;
-  XC_heart= 62;
-  XC_icon= 64;
-  XC_iron_cross= 66;
-  XC_left_ptr= 68;
-  XC_left_side= 70;
-  XC_left_tee= 72;
-  XC_leftbutton= 74;
-  XC_ll_angle= 76;
-  XC_lr_angle= 78;
-  XC_man= 80;
-  XC_middlebutton= 82;
-  XC_mouse= 84;
-  XC_pencil= 86;
-  XC_pirate= 88;
-  XC_plus= 90;
-  XC_question_arrow= 92;
-  XC_right_ptr= 94;
-  XC_right_side= 96;
-  XC_right_tee= 98;
-  XC_rightbutton= 100;
-  XC_rtl_logo= 102;
-  XC_sailboat= 104;
-  XC_sb_down_arrow= 106;
-  XC_sb_h_double_arrow= 108;
-  XC_sb_left_arrow= 110;
-  XC_sb_right_arrow= 112;
-  XC_sb_up_arrow= 114;
-  XC_sb_v_double_arrow= 116;
-  XC_shuttle= 118;
-  XC_sizing= 120;
-  XC_spider= 122;
-  XC_spraycan= 124;
-  XC_star= 126;
-  XC_target= 128;
-  XC_tcross= 130;
-  XC_top_left_arrow= 132;
-  XC_top_left_corner= 134;
-  XC_top_right_corner= 136;
-  XC_top_side= 138;
-  XC_top_tee= 140;
-  XC_trek= 142;
-  XC_ul_angle= 144;
-  XC_umbrella= 146;
-  XC_ur_angle= 148;
-  XC_watch= 150;
-  XC_xterm= 152;
-
-{
-  $Log$
-  Revision 1.2  2000-07-13 11:33:11  michael
-  + removed logs
- 
-}

+ 0 - 1224
packages/forms/demo/Makefile

@@ -1,1224 +0,0 @@
-#
-# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/27]
-#
-default: all
-MAKEFILETARGETS=linux go32v2 win32 os2 freebsd beos netbsd amiga atari sunos qnx
-override PATH:=$(subst \,/,$(PATH))
-ifeq ($(findstring ;,$(PATH)),)
-inUnix=1
-SEARCHPATH:=$(filter-out .,$(subst :, ,$(PATH)))
-else
-SEARCHPATH:=$(subst ;, ,$(PATH))
-endif
-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 cygwin,$(MACHTYPE)),)
-inCygWin=1
-endif
-endif
-ifeq ($(OS_TARGET),freebsd)
-BSDhier=1
-endif
-ifeq ($(OS_TARGET),netbsd)
-BSDhier=1
-endif
-ifdef inUnix
-BATCHEXT=.sh
-else
-ifdef inOS2
-BATCHEXT=.cmd
-else
-BATCHEXT=.bat
-endif
-endif
-ifdef inUnix
-PATHSEP=/
-else
-PATHSEP:=$(subst /,\,/)
-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
-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=ppc386
-endif
-else
-override FPC=ppc386
-endif
-endif
-override FPC:=$(subst $(SRCEXEEXT),,$(FPC))
-override FPC:=$(subst \,/,$(FPC))$(SRCEXEEXT)
-ifndef FPC_VERSION
-FPC_VERSION:=$(shell $(FPC) -iV)
-endif
-export FPC FPC_VERSION
-ifeq ($(findstring 1.0.,$(FPC_VERSION)),)
-COMPILERINFO:=$(shell $(FPC) -iSP -iTP -iSO -iTO)
-ifndef CPU_SOURCE
-CPU_SOURCE:=$(word 1,$(COMPILERINFO))
-endif
-ifndef CPU_TARGET
-CPU_TARGET:=$(word 2,$(COMPILERINFO))
-endif
-ifndef OS_SOURCE
-OS_SOURCE:=$(word 3,$(COMPILERINFO))
-endif
-ifndef OS_TARGET
-OS_TARGET:=$(word 4,$(COMPILERINFO))
-endif
-else
-ifndef CPU_SOURCE
-CPU_SOURCE:=$(shell $(FPC) -iSP)
-endif
-ifndef CPU_TARGET
-CPU_TARGET:=$(shell $(FPC) -iTP)
-endif
-ifndef OS_SOURCE
-OS_SOURCE:=$(shell $(FPC) -iSO)
-endif
-ifndef OS_TARGET
-OS_TARGET:=$(shell $(FPC) -iTO)
-endif
-endif
-FULL_TARGET=$(CPU_TARGET)-$(OS_TARGET)
-FULL_SOURCE=$(CPU_SOURCE)-$(OS_SOURCE)
-ifneq ($(FULL_TARGET),$(FULL_SOURCE))
-CROSSCOMPILE=1
-endif
-ifeq ($(findstring makefile,$(MAKECMDGOALS)),)
-ifeq ($(findstring $(OS_TARGET),$(MAKEFILETARGETS)),)
-$(error The Makefile doesn't support target $(OS_TARGET), please run fpcmake first)
-endif
-endif
-export OS_TARGET OS_SOURCE CPU_TARGET CPU_SOURCE FULL_TARGET FULL_SOURCE 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=c:/pp
-endif
-endif
-endif
-endif
-ifndef CROSSDIR
-CROSSDIR:=$(FPCDIR)/cross/$(FULL_TARGET)
-endif
-ifndef CROSSTARGETDIR
-CROSSTARGETDIR=$(CROSSDIR)/$(FULL_TARGET)
-endif
-ifdef CROSSCOMPILE
-UNITSDIR:=$(wildcard $(CROSSTARGETDIR)/units)
-ifeq ($(UNITSDIR),)
-UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
-endif
-else
-UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
-endif
-PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages)
-override TARGET_PROGRAMS+=pushme yesno pushbutton touchbutton minput inputall choice butttypes colsel colsel1 buttonall chartall positioner secretinput cursor fdial ldial ndial invslider sliderall borderwidth boxtype xyplotover arrowbutton browserop browserall chartstrip colbrowser counter fbrowse1 fbrowse flclock fonts goodies lalign ll longlabel menu objinactive objpos newbutton multilabel objreturn
-override INSTALL_FPCPACKAGE=y
-ifdef REQUIRE_UNITSDIR
-override UNITSDIR+=$(REQUIRE_UNITSDIR)
-endif
-ifdef REQUIRE_PACKAGESDIR
-override PACKAGESDIR+=$(REQUIRE_PACKAGESDIR)
-endif
-ifdef ZIPINSTALL
-ifeq ($(OS_TARGET),linux)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_TARGET),freebsd)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_TARGET),netbsd)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_TARGET),sunos)
-UNIXINSTALLDIR=1
-endif
-else
-ifeq ($(OS_SOURCE),linux)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_SOURCE),freebsd)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_SOURCE),netbsd)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_TARGET),sunos)
-UNIXINSTALLDIR=1
-endif
-endif
-ifndef INSTALL_PREFIX
-ifdef PREFIX
-INSTALL_PREFIX=$(PREFIX)
-endif
-endif
-ifndef INSTALL_PREFIX
-ifdef UNIXINSTALLDIR
-INSTALL_PREFIX=/usr/local
-else
-ifdef INSTALL_FPCPACKAGE
-INSTALL_BASEDIR:=/pp
-else
-INSTALL_BASEDIR:=/$(PACKAGE_NAME)
-endif
-endif
-endif
-export INSTALL_PREFIX
-ifndef DIST_DESTDIR
-DIST_DESTDIR:=$(BASEDIR)
-endif
-export DIST_DESTDIR
-ifndef INSTALL_BASEDIR
-ifdef UNIXINSTALLDIR
-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 UNIXINSTALLDIR
-INSTALL_BINDIR:=$(INSTALL_PREFIX)/bin
-else
-INSTALL_BINDIR:=$(INSTALL_BASEDIR)/bin
-ifdef INSTALL_FPCPACKAGE
-INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(OS_TARGET)
-endif
-endif
-endif
-ifndef INSTALL_UNITDIR
-ifdef CROSSCOMPILE
-INSTALL_UNITDIR:=$(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/units
-else
-INSTALL_UNITDIR:=$(INSTALL_BASEDIR)/units/$(OS_TARGET)
-endif
-ifdef INSTALL_FPCPACKAGE
-ifdef PACKAGE_NAME
-INSTALL_UNITDIR:=$(INSTALL_UNITDIR)/$(PACKAGE_NAME)
-endif
-endif
-endif
-ifndef INSTALL_LIBDIR
-ifdef UNIXINSTALLDIR
-INSTALL_LIBDIR:=$(INSTALL_PREFIX)/lib
-else
-INSTALL_LIBDIR:=$(INSTALL_UNITDIR)
-endif
-endif
-ifndef INSTALL_SOURCEDIR
-ifdef UNIXINSTALLDIR
-ifdef INSTALL_FPCPACKAGE
-ifdef BSDhier
-INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/share/src/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-else
-INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/src/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-endif
-else
-ifdef BSDhier
-INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/share/src/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-else
-INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/src/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-endif
-endif
-else
-ifdef INSTALL_FPCPACKAGE
-INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source/$(PACKAGE_NAME)
-else
-INSTALL_SOURCEDIRL:=$(INSTALL_BASEDIR)/source
-endif
-endif
-endif
-ifndef INSTALL_DOCDIR
-ifdef UNIXINSTALLDIR
-ifdef INSTALL_FPCPACKAGE
-ifdef BSDhier
-INSTALL_DOCDIR:=$(INSTALL_PREFIX)/share/doc/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-else
-INSTALL_DOCDIR:=$(INSTALL_PREFIX)/doc/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-endif
-else
-ifdef BSDhier
-INSTALL_DOCDIR:=$(INSTALL_PREFIX)/share/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-else
-INSTALL_DOCDIR:=$(INSTALL_PREFIX)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-endif
-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 UNIXINSTALLDIR
-ifdef INSTALL_FPCPACKAGE
-ifdef BSDhier
-INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-else
-INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/fpc-$(FPC_VERSION)/examples/$(PACKAGE_NAME)
-endif
-else
-ifdef BSDhier
-INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-else
-INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-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
-ifdef CROSSCOMPILE
-ifndef CROSSBINDIR
-CROSSBINDIR:=$(wildcard $(CROSSTARGETDIR)/bin/$(FULL_SOURCE))
-ifeq ($(CROSSBINDIR),)
-CROSSBINDIR:=$(wildcard $(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/bin/$(FULL_SOURCE))
-endif
-endif
-else
-CROSSBINDIR=
-endif
-ifdef inUnix
-ifndef GCCLIBDIR
-GCCLIBDIR:=$(shell dirname `(gcc -v 2>&1)| head -n 1| awk '{ print $$4 } '`)
-endif
-ifeq ($(OS_TARGET),linux)
-ifndef OTHERLIBDIR
-OTHERLIBDIR:=$(shell grep -v "^\#" /etc/ld.so.conf | awk '{ ORS=" "; print $1 }')
-endif
-endif
-ifeq ($(OS_TARGET),netbsd)
-OTHERLIBDIR+=/usr/pkg/lib
-endif
-export GCCLIBDIR OTHERLIB
-endif
-LOADEREXT=.as
-EXEEXT=.exe
-PPLEXT=.ppl
-PPUEXT=.ppu
-OEXT=.o
-ASMEXT=.s
-SMARTEXT=.sl
-STATICLIBEXT=.a
-SHAREDLIBEXT=.so
-STATICLIBPREFIX=libp
-RSTEXT=.rst
-FPCMADE=fpcmade
-ifeq ($(OS_TARGET),go32v1)
-PPUEXT=.pp1
-OEXT=.o1
-ASMEXT=.s1
-SMARTEXT=.sl1
-STATICLIBEXT=.a1
-SHAREDLIBEXT=.so1
-STATICLIBPREFIX=
-FPCMADE=fpcmade.v1
-PACKAGESUFFIX=v1
-endif
-ifeq ($(OS_TARGET),go32v2)
-STATICLIBPREFIX=
-FPCMADE=fpcmade.dos
-ZIPSUFFIX=go32
-endif
-ifeq ($(OS_TARGET),linux)
-EXEEXT=
-HASSHAREDLIB=1
-FPCMADE=fpcmade.lnx
-ZIPSUFFIX=linux
-endif
-ifeq ($(OS_TARGET),freebsd)
-EXEEXT=
-HASSHAREDLIB=1
-FPCMADE=fpcmade.freebsd
-ZIPSUFFIX=freebsd
-endif
-ifeq ($(OS_TARGET),netbsd)
-EXEEXT=
-HASSHAREDLIB=1
-FPCMADE=fpcmade.netbsd
-ZIPSUFFIX=netbsd
-endif
-ifeq ($(OS_TARGET),win32)
-PPUEXT=.ppw
-OEXT=.ow
-ASMEXT=.sw
-SMARTEXT=.slw
-STATICLIBEXT=.aw
-SHAREDLIBEXT=.dll
-FPCMADE=fpcmade.w32
-ZIPSUFFIX=w32
-endif
-ifeq ($(OS_TARGET),os2)
-PPUEXT=.ppo
-ASMEXT=.so2
-OEXT=.oo2
-AOUTEXT=.out
-SMARTEXT=.so
-STATICLIBEXT=.ao2
-SHAREDLIBEXT=.dll
-FPCMADE=fpcmade.os2
-ZIPSUFFIX=emx
-endif
-ifeq ($(OS_TARGET),amiga)
-EXEEXT=
-PPUEXT=.ppa
-ASMEXT=.asm
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-SHAREDLIBEXT=.library
-FPCMADE=fpcmade.amg
-endif
-ifeq ($(OS_TARGET),atari)
-PPUEXT=.ppt
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=.ttp
-FPCMADE=fpcmade.ata
-endif
-ifeq ($(OS_TARGET),beos)
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=
-FPCMADE=fpcmade.be
-ZIPSUFFIX=be
-endif
-ifeq ($(OS_TARGET),sunos)
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=
-FPCMADE=fpcmade.sun
-ZIPSUFFIX=sun
-endif
-ifeq ($(OS_TARGET),qnx)
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=
-FPCMADE=fpcmade.qnx
-ZIPSUFFIX=qnx
-endif
-ifndef ECHO
-ECHO:=$(strip $(wildcard $(addsuffix /gecho$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(ECHO),)
-ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(ECHO),)
-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=
-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=
-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=
-else
-CPPROG:=$(firstword $(CPPROG))
-endif
-endif
-export CPPROG
-ifndef RMPROG
-RMPROG:=$(strip $(wildcard $(addsuffix /rm$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(RMPROG),)
-RMPROG=
-else
-RMPROG:=$(firstword $(RMPROG))
-endif
-endif
-export RMPROG
-ifndef MVPROG
-MVPROG:=$(strip $(wildcard $(addsuffix /mv$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(MVPROG),)
-MVPROG=
-else
-MVPROG:=$(firstword $(MVPROG))
-endif
-endif
-export MVPROG
-ifndef ECHOREDIR
-ECHOREDIR:=$(subst /,$(PATHSEP),$(ECHO))
-endif
-ifndef COPY
-COPY:=$(CPPROG) -fp
-endif
-ifndef COPYTREE
-COPYTREE:=$(CPPROG) -rfp
-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=
-else
-PPUMOVE:=$(firstword $(PPUMOVE))
-endif
-endif
-export PPUMOVE
-ifndef FPCMAKE
-FPCMAKE:=$(strip $(wildcard $(addsuffix /fpcmake$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(FPCMAKE),)
-FPCMAKE=
-else
-FPCMAKE:=$(firstword $(FPCMAKE))
-endif
-endif
-export FPCMAKE
-ifndef ZIPPROG
-ZIPPROG:=$(strip $(wildcard $(addsuffix /zip$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(ZIPPROG),)
-ZIPPROG=
-else
-ZIPPROG:=$(firstword $(ZIPPROG))
-endif
-endif
-export ZIPPROG
-ifndef TARPROG
-TARPROG:=$(strip $(wildcard $(addsuffix /tar$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(TARPROG),)
-TARPROG=
-else
-TARPROG:=$(firstword $(TARPROG))
-endif
-endif
-export TARPROG
-ASNAME=as
-LDNAME=ld
-ARNAME=ar
-RCNAME=rc
-ifeq ($(OS_TARGET),win32)
-ASNAME=asw
-LDNAME=ldw
-ARNAME=arw
-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$(BATCHEXT)
-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=vI
-TAREXT=.tar.bz2
-else
-TAROPT=vz
-TAREXT=.tar.gz
-endif
-override REQUIRE_PACKAGES=rtl forms
-ifeq ($(OS_TARGET),linux)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_X11=1
-REQUIRE_PACKAGES_FORMS=1
-endif
-ifeq ($(OS_TARGET),go32v2)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_X11=1
-REQUIRE_PACKAGES_FORMS=1
-endif
-ifeq ($(OS_TARGET),win32)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_X11=1
-REQUIRE_PACKAGES_FORMS=1
-endif
-ifeq ($(OS_TARGET),os2)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_X11=1
-REQUIRE_PACKAGES_FORMS=1
-endif
-ifeq ($(OS_TARGET),freebsd)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_X11=1
-REQUIRE_PACKAGES_FORMS=1
-endif
-ifeq ($(OS_TARGET),beos)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_X11=1
-REQUIRE_PACKAGES_FORMS=1
-endif
-ifeq ($(OS_TARGET),netbsd)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_X11=1
-REQUIRE_PACKAGES_FORMS=1
-endif
-ifeq ($(OS_TARGET),amiga)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_X11=1
-REQUIRE_PACKAGES_FORMS=1
-endif
-ifeq ($(OS_TARGET),atari)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_X11=1
-REQUIRE_PACKAGES_FORMS=1
-endif
-ifeq ($(OS_TARGET),sunos)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_X11=1
-REQUIRE_PACKAGES_FORMS=1
-endif
-ifeq ($(OS_TARGET),qnx)
-REQUIRE_PACKAGES_RTL=1
-REQUIRE_PACKAGES_X11=1
-REQUIRE_PACKAGES_FORMS=1
-endif
-ifdef REQUIRE_PACKAGES_RTL
-PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
-ifneq ($(PACKAGEDIR_RTL),)
-ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
-UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
-else
-UNITDIR_RTL=$(PACKAGEDIR_RTL)
-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_X11
-PACKAGEDIR_X11:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /x11/Makefile.fpc,$(PACKAGESDIR))))))
-ifneq ($(PACKAGEDIR_X11),)
-ifneq ($(wildcard $(PACKAGEDIR_X11)/$(OS_TARGET)),)
-UNITDIR_X11=$(PACKAGEDIR_X11)/$(OS_TARGET)
-else
-UNITDIR_X11=$(PACKAGEDIR_X11)
-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_FORMS
-PACKAGEDIR_FORMS:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /forms/Makefile.fpc,$(PACKAGESDIR))))))
-ifneq ($(PACKAGEDIR_FORMS),)
-ifneq ($(wildcard $(PACKAGEDIR_FORMS)/$(OS_TARGET)),)
-UNITDIR_FORMS=$(PACKAGEDIR_FORMS)/$(OS_TARGET)
-else
-UNITDIR_FORMS=$(PACKAGEDIR_FORMS)
-endif
-else
-PACKAGEDIR_FORMS=
-UNITDIR_FORMS:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /forms/Package.fpc,$(UNITSDIR)))))
-ifneq ($(UNITDIR_FORMS),)
-UNITDIR_FORMS:=$(firstword $(UNITDIR_FORMS))
-else
-UNITDIR_FORMS=
-endif
-endif
-ifdef UNITDIR_FORMS
-override COMPILER_UNITDIR+=$(UNITDIR_FORMS)
-endif
-endif
-ifndef NOCPUDEF
-override FPCOPTDEF=$(CPU_TARGET)
-endif
-ifneq ($(OS_TARGET),$(OS_SOURCE))
-override FPCOPT+=-T$(OS_TARGET)
-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
-ifeq ($(CPU_TARGET),i386)
-FPCCPUOPT:=-OG2p3
-else
-FPCCPUOPT:=
-endif
-override FPCOPT+=-Xs $(FPCCPUOPT) -n
-override FPCOPTDEF+=RELEASE
-endif
-ifdef STRIP
-override FPCOPT+=-Xs
-endif
-ifdef OPTIMIZE
-ifeq ($(CPU_TARGET),i386)
-override FPCOPT+=-OG2p3
-endif
-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 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 COMPILER:=$(FPC) $(FPCOPT)
-ifeq (,$(findstring -s ,$(COMPILER)))
-EXECPPAS=
-else
-ifeq ($(OS_SOURCE),$(OS_TARGET))
-EXECPPAS:=@$(PPAS)
-endif
-endif
-.PHONY: fpc_exes
-ifdef TARGET_PROGRAMS
-override EXEFILES=$(addsuffix $(EXEEXT),$(TARGET_PROGRAMS))
-override EXEOFILES:=$(addsuffix $(OEXT),$(TARGET_PROGRAMS)) $(addprefix $(STATICLIBPREFIX),$(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
-endif
-fpc_exes: $(EXEFILES)
-ifdef TARGET_RSTS
-override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS))
-override CLEANRSTFILES+=$(RSTFILES)
-endif
-.PHONY: fpc_all fpc_smart fpc_debug fpc_release
-$(FPCMADE): $(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 .pp .rc .res
-%$(PPUEXT): %.pp
-	$(COMPILER) $<
-	$(EXECPPAS)
-%$(PPUEXT): %.pas
-	$(COMPILER) $<
-	$(EXECPPAS)
-%$(EXEEXT): %.pp
-	$(COMPILER) $<
-	$(EXECPPAS)
-%$(EXEEXT): %.pas
-	$(COMPILER) $<
-	$(EXECPPAS)
-%.res: %.rc
-	windres -i $< -o $@
-vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
-vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
-vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
-.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),$(INSTALLPPUFILES))
-endif
-ifdef INSTALLPPUFILES
-override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
-override INSTALLPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPUFILES))
-override INSTALLPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPULINKFILES)))
-override INSTALL_CREATEPACKAGEFPC=1
-endif
-ifdef INSTALLEXEFILES
-override INSTALLEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(INSTALLEXEFILES))
-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$(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)))
-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)
-fpc_distclean: clean
-ifdef COMPILER_UNITTARGETDIR
-TARGETDIRCLEAN=fpc_clean
-endif
-fpc_cleanall: $(CLEANTARGET) $(TARGETDIRCLEAN)
-ifdef CLEANEXEFILES
-	-$(DEL) $(CLEANEXEFILES)
-endif
-	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
-	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
-ifdef AOUTEXT
-	-$(DEL) *$(AOUTEXT)
-endif
-.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 Target.. $(FULL_SOURCE)
-	@$(ECHO)  Full Source.. $(FULL_TARGET)
-	@$(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)  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)  ZipPrefix............ $(ZIPPREFIX)
-	@$(ECHO)  ZipSuffix............ $(ZIPSUFFIX)
-	@$(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
-examples:
-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 examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefiles
-ifneq ($(wildcard fpcmake.loc),)
-include fpcmake.loc
-endif

+ 0 - 20
packages/forms/demo/Makefile.fpc

@@ -1,20 +0,0 @@
-#
-#   Makefile.fpc for Forms Examples
-#
-
-[target]
-programs=pushme yesno pushbutton touchbutton minput inputall choice butttypes \
-         colsel colsel1 buttonall chartall positioner secretinput cursor fdial \
-         ldial ndial invslider sliderall borderwidth boxtype xyplotover \
-         arrowbutton browserop browserall chartstrip colbrowser counter \
-         fbrowse1 fbrowse flclock fonts goodies lalign ll longlabel menu \
-         objinactive objpos newbutton multilabel objreturn
-
-[require]
-packages=forms
-
-[install]
-fpcpackage=y
-
-[default]
-fpcdir=../../..

+ 0 - 44
packages/forms/demo/arrowbutton.pp

@@ -1,44 +0,0 @@
-{ This demo shows the use of special symbol labels }
-program arrowbutton;
-
-uses forms;
-
-const border : longint = FL_TRANSIENT;
-
-var 
-  form : PFL_FORM;
-  obj,but : PFL_OBJECT;
-
-begin
-  fl_initialize(@argc, argv, 'FormDemo', nil, 0);
-
-  form := fl_bgn_form(FL_UP_BOX,400,400);
-    obj := fl_add_button(FL_NORMAL_BUTTON, 50, 250,100,100,'@1');
-    fl_set_object_lcol(obj,FL_BLUE);
-    obj := fl_add_button(FL_NORMAL_BUTTON,150, 250,100,100,'@2');
-    fl_set_object_lcol(obj,FL_BLUE);
-    obj := fl_add_button(FL_NORMAL_BUTTON,250, 250,100,100,'@3');
-    fl_set_object_lcol(obj,FL_BLUE);
-    obj := fl_add_button(FL_NORMAL_BUTTON, 50,150,100,100,'@4');
-    fl_set_object_lcol(obj,FL_BLUE);
-    but := fl_add_button(FL_NORMAL_BUTTON,150,150,100,100,'@square');
-    fl_set_object_lcol(but,FL_GREEN);
-    fl_set_object_color(but,FL_MAGENTA,FL_RED);
-    obj := fl_add_button(FL_NORMAL_BUTTON,250,150,100,100,'@6');
-    fl_set_object_lcol(obj,FL_BLUE);
-    obj := fl_add_button(FL_NORMAL_BUTTON, 50, 50,100,100,'@7');
-    fl_set_object_lcol(obj,FL_BLUE);
-    obj := fl_add_button(FL_NORMAL_BUTTON,150, 50,100,100,'@8');
-    fl_set_object_lcol(obj,FL_BLUE);
-    obj := fl_add_button(FL_NORMAL_BUTTON,250, 50,100,100,'@9');
-    fl_set_object_lcol(obj,FL_BLUE);
-  fl_end_form();
-
-  fl_show_form(form,FL_PLACE_ASPECT,border,'Buttons');
-  while (fl_do_forms() <> but) do;
-  fl_hide_form(form);
-end.  $Log$
-end.  Revision 1.2  2000-07-13 11:33:12  michael
-end.  + removed logs
-end. 
-}

+ 0 - 9
packages/forms/demo/bm1.xbm

@@ -1,9 +0,0 @@
-const bm1_width: Longint = 16;
-    bm1_height : longint = 16;
-    bm1_bits : array [1..32] of byte =  
-    (
-    $00, $00, $00, $57, $7c, $72, $c4, $52, $c4, $00, $44, $01,
-    $44, $1f, $fc, $22, $40, $42, $40, $44, $40, $43, $c0, $40,
-    $70, $40, $8c, $20, $00, $1f, $00, $00
-    );
-

+ 0 - 7
packages/forms/demo/bm2.xbm

@@ -1,7 +0,0 @@
-Const 
-   bm2_width : longint = 16;
-   bm2_height : longint = 16;
-   bm2_bits : array[1..32] of byte = (
-   $00, $00, $00, $57, $7c, $72, $fc, $52, $fc, $00, $7c, $01,
-   $7c, $1f, $fc, $22, $40, $42, $40, $44, $40, $43, $c0, $40,
-   $70, $40, $8c, $20, $00, $1f, $00, $00 );

+ 0 - 109
packages/forms/demo/borderwidth.pp

@@ -1,109 +0,0 @@
-program borderwidth;
-
-uses forms;
-
-type TFD_bwform = record
-	bwform : PFL_FORM;
-	vdata : pointer;
-	ldata : longint;
-	done,
-	bw_choice,
-	bwgroup,
-	pmobj : PFL_OBJECT;
-	end;
-PFD_bwform = ^TFD_bwform;
-	
-
-{ callbacks for form bwform }
-procedure done_callback(ob : PFL_OBJECT; data : longint);export;
-begin
-  { fill-in code for callback }
-   halt(0);
-end;
-
-var
-fd_bwform : PFD_bwform;
-
-const bws : array[0..7] of longint = (-3,-2,-1,1,2,3,4,5);
-
-procedure bw_callback(ob : PFL_OBJECT; data : longint);export;
-
-var bw : longint;
-
-begin
-   bw := bws[fl_get_choice(ob)-1];
-
-   fl_set_object_bw(fd_bwform^.bwgroup, bw);
-   { since bwgroup includes the backface, it wipes out the done button}  
-   fl_redraw_object(fd_bwform^.done);
-   fl_redraw_object(fd_bwform^.bw_choice);
-end;
-
-function create_form_bwform : PFD_bwform;
-var
-  obj : PFL_OBJECT;
-  fdui : PFD_bwform;
-  
-begin
-
-  new(fdui);
-  fdui^.bwform := fl_bgn_form(FL_NO_BOX, 380, 340);
-
-  fdui^.bwgroup := fl_bgn_group();
-  obj := fl_add_box(FL_UP_BOX,0,0,380,340,'');
-  obj := fl_add_frame(FL_EMBOSSED_FRAME,220,60,135,145,'');
-  obj := fl_add_frame(FL_ENGRAVED_FRAME,15,60,185,145,'');
-  obj := fl_add_slider(FL_HOR_SLIDER,25,75,160,25,'');
-  obj := fl_add_pixmapbutton(FL_NORMAL_BUTTON,305,145,40,35,'');
-  fdui^.pmobj := obj;
-  obj := fl_add_positioner(FL_NORMAL_POSITIONER,30,225,100,80,'');
-  obj := fl_add_counter(FL_NORMAL_COUNTER,25,160,160,25,'');
-  obj := fl_add_lightbutton(FL_PUSH_BUTTON,230,100,100,30,'LightButton');
-  obj := fl_add_roundbutton(FL_PUSH_BUTTON,230,130,80,33,'Button');
-  obj := fl_add_round3dbutton(FL_PUSH_BUTTON,230,152,80,33,'Button');
-    fl_set_object_color(obj,FL_COL1, FL_BLUE);
-  obj := fl_add_checkbutton(FL_PUSH_BUTTON,230,174,80,33,'Button');
-  obj := fl_add_input(FL_NORMAL_INPUT,195,240,160,28,'Input');
-  obj := fl_add_valslider(FL_HOR_BROWSER_SLIDER,25,120,160,25,'');
-  obj := fl_add_button(FL_NORMAL_BUTTON,230,65,100,30,'Button');
-  fl_end_group();
-
-  obj := fl_add_button(FL_NORMAL_BUTTON,270,290,75,30,'Done');
-  fdui^.done := obj;
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@done_callback),0);
-  obj:= fl_add_choice(FL_NORMAL_CHOICE,105,20,80,25,'Border Width');
-  fdui^.bw_choice := obj ;
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@bw_callback),0);
-  fl_end_form();
-  fdui^.bwform^.fdui  := fdui;
-
-  create_form_bwform:= fdui;
-end;
-
-begin
-   { application default. Can be overriden by the command line options }
-   fl_set_border_width(-2); 
-
-   fl_initialize(@argc, argv, 'FormDemo', nil, 0);
-   fd_bwform := create_form_bwform;
-
-   { fill-in form initialization code }
-   fl_set_pixmapbutton_file(fd_bwform^.pmobj, 'crab.xpm');
-
-   fl_addto_choice(fd_bwform^.bw_choice,'-3 Pixel|-2 Pixel|-1 Pixel');
-   fl_addto_choice(fd_bwform^.bw_choice,' 1 Pixel| 2 Pixel| 3 Pixel');
-   fl_addto_choice(fd_bwform^.bw_choice,' 4 Pixel| 5 Pixel');
-   fl_set_choice_text(fd_bwform^.bw_choice, '-2 Pixel');
-
-   { show the first form }
-   fl_show_form(fd_bwform^.bwform,FL_PLACE_CENTER,FL_NOBORDER,'bwform');
-   while (fl_do_forms<>nil) do;
-end.
-
-
-
-  $Log$
-  Revision 1.2  2000-07-13 11:33:12  michael
-  + removed logs
- 
-}

+ 0 - 226
packages/forms/demo/boxtype.pp

@@ -1,226 +0,0 @@
-{ This demo show the different boxtypes. Note that some
- * boxtypes are not appropriate for some objects
- }
-program boxtype;
-
-uses forms;
-
-const border = FL_TRANSIENT;
-
-
-type TVN_Struct = record
-     theval : longint;
-     name : pchar;
-     end;
-
-const gmode : array[0..5] of TVN_Struct =
- ((theval : FL_StaticGray;  name : 'StaticGray'),
- (theval : FL_GrayScale;   name : 'GrayScale'),
- (Theval : FL_StaticColor; name : 'StaticColor'),
- (Theval : FL_Pseudocolor; name : 'PseudoColor'),
- (theval : FL_Truecolor;   name : 'TrueColor'),
- (Theval : FL_DirectColor; name : 'DirectColor'));
-
-Const btypes : array [0..15] of TVN_struct=
-(
-   (theval : FL_NO_BOX; name : 'no box'),
-   (theval : FL_UP_BOX; name : 'up box'),
-   (theval : FL_DOWN_BOX; name : 'down box'),
-   (theval : FL_BORDER_BOX; name : 'border box'),
-   (theval : FL_SHADOW_BOX; name : 'shadow box'),
-   (theval : FL_FLAT_BOX; name : 'flat box'),
-   (theval : FL_FRAME_BOX; name : 'frame box'),
-   (theval : FL_EMBOSSED_BOX; name : 'embossed box'),
-   (theval : FL_ROUNDED_BOX; name : 'rounded box'),
-   (theval : FL_RFLAT_BOX; name : 'rflat box'),
-   (theval : FL_RSHADOW_BOX; name : 'shadow box'),
-   (theval : FL_OVAL_BOX; name : 'oval box'),
-   (theval : FL_ROUNDED3D_UPBOX; name : 'rounded3d upbox'),
-   (theval : FL_ROUNDED3D_DOWNBOX; name : 'rounded3d downbox'),
-   (theval : FL_OVAL3D_UPBOX; name : 'oval3d upbox'),
-   (theval : FL_OVAL3D_DOWNBOX; name : 'oval3d downbox')
-   );
-
-{$i srs.xbm}
-
-{************** Callback *********************}
-
-var
-  form : PFL_FORM;
-  tobj : array [0..17] of PFL_OBJECT;
-  exitob, btypeob, modeob : PFL_OBJECT;
-Const
-lastbt : Longint = -1;
-
-procedure boxtype_cb (ob : PFL_OBJECT; arg : longint);export;
-
-var
-  i, req_bt  : longint;
-  
-begin
-  req_bt:= fl_get_choice(ob) - 1;
-  if (lastbt <> req_bt) then
-    begin
-     fl_freeze_form (form);
-     fl_redraw_form (form);
-     i:=0;
-     while i<18 do
-       begin
-       fl_set_object_boxtype (tobj[i], btypes[req_bt].theval);
-       inc(i);
-       end;
-     fl_unfreeze_form (form);
-     lastbt := req_bt;
-    end;
-end;
-
-Const lval : longint = -1;
-
-procedure  mode_cb (ob : PFL_OBJECT; arg : longint);export;
-
-var
-  db,theval : longint;
-
-begin
-  db:=0;
-  theval := fl_get_choice (ob) -1;
-  if (theval = lval) or ( theval < 0) then exit;
-
-  fl_hide_form (form);
-  if not (fl_mode_capable(gmode[theval].theval, 0)<>0) then
-    begin
-      fl_set_choice(ob, lval);
-      theval := lval;
-    end;
-
-  fl_set_graphics_mode (gmode[theval].theval, db);
-  fl_show_form (form, FL_PLACE_GEOMETRY, border, 'Box types');
-
-  lval := theval;
-end;
-
-{************** Creation Routines ********************}
-
-procedure create_form_form;
-var
-  obj : PFL_OBJECT;
-
-begin
-  form := fl_bgn_form(FL_NO_BOX, 720, 520);
-  obj := fl_add_box(FL_UP_BOX, 0, 0, 720, 520, '');
-  fl_set_object_color(obj, FL_BLUE, FL_COL1);
-  obj := fl_add_box(FL_DOWN_BOX, 10, 90, 700, 420, '');
-  fl_set_object_color(obj, FL_COL1, FL_COL1);
-  obj := fl_add_box(FL_DOWN_BOX, 10, 10, 700, 70, '');
-  fl_set_object_color(obj, FL_SLATEBLUE, FL_COL1);
-  obj:= fl_add_box(FL_UP_BOX, 30, 110, 110, 110, 'Box');
-  tobj[0] := obj ;
-  obj:= fl_add_text(FL_NORMAL_TEXT, 30, 240, 110, 30, 'Text');
-  tobj[1] := obj ;
-  obj:= fl_add_bitmap(FL_NORMAL_BITMAP, 40, 280, 90, 80, 'Bitmap');
-  tobj[2] := obj ;
-  fl_set_object_lcol(obj, FL_BLUE);
-  obj:= fl_add_chart(FL_BAR_CHART, 160, 110, 160, 110, 'Chart');
-  tobj[3] := obj ;
-  obj:= fl_add_clock(FL_ANALOG_CLOCK, 40, 390, 90, 90, 'Clock');
-  tobj[4] := obj ;
-  fl_set_object_dblbuffer(tobj[4],1);
-  obj:=fl_add_button(FL_NORMAL_BUTTON, 340, 110, 120, 30, 'Button');
-  tobj[5]:=obj;
-  obj:=fl_add_lightbutton(FL_PUSH_BUTTON,340,150,120,30,'Lightbutton');
-  tobj[6]:=obj;
-  obj:=fl_add_roundbutton(FL_PUSH_BUTTON,340,190,120,30,'Roundbutton');
-  tobj[7]:=obj;
-  obj:=fl_add_slider(FL_VERT_SLIDER, 160, 250, 40, 230, 'Slider');
-  tobj[8]:=obj;
-  obj:=fl_add_valslider(FL_VERT_SLIDER, 220, 250, 40, 230, 'Valslider');
-  tobj[9]:=obj;
-  obj:=fl_add_dial (FL_LINE_DIAL, 280, 250, 100, 100, 'Dial');
-  tobj[10]:=obj;
-  obj:=fl_add_positioner(FL_NORMAL_POSITIONER,280,380,150,100, 'Positioner');
-  tobj[11]:=obj;
-  obj:=fl_add_counter (FL_NORMAL_COUNTER,480,110,210,30, 'Counter');
-  tobj[12]:=obj;
-  obj:=fl_add_input (FL_NORMAL_INPUT, 520,170,170,30, 'Input');
-  tobj[13]:=obj;
-  obj:=fl_add_menu (FL_PUSH_MENU, 400, 240, 100, 30, 'Menu');
-  tobj[14]:=obj;
-  obj:=fl_add_choice (FL_NORMAL_CHOICE, 580, 250, 110, 30, 'Choice');
-  tobj[15]:=obj;
-  obj:=fl_add_timer (FL_VALUE_TIMER, 580, 210, 110, 30, 'Timer');
-  tobj[16]:=obj;
-  fl_set_object_dblbuffer(tobj[16], 1);
-  obj:=fl_add_browser (FL_NORMAL_BROWSER,450,300,240, 180, 'Browser');
-  tobj[17]:=obj;
-  obj:= fl_add_button (FL_NORMAL_BUTTON, 590, 30, 100, 30, 'Exit');
-  exitob:=obj;
-  obj:= fl_add_choice (FL_NORMAL_CHOICE,110,30, 130, 30, 'Boxtype');
-  btypeob:=obj;
-  fl_set_object_callback (obj, PFL_CALLBACKPTR(@boxtype_cb), 0);
-  obj  :=fl_add_choice(FL_NORMAL_CHOICE,370,30,130,30,'Graphics mode');
-  modeob := obj;
-  fl_set_object_callback (obj, PFL_CALLBACKPTR(@mode_cb), 0);
-  fl_end_form ;
-end;
-
-procedure create_the_forms;
-begin
-  create_form_form;
-end;
-
-{************** Main Routine **********************}
-
-const browserlines : array [0..21] of pchar = (
-   ' ', '@C1@c@l@bObjects Demo',   ' ',
-   'This demo shows you all',      'objects that currently',
-   'exist in the Forms Library.',  ' ',
-   'You can change the boxtype',   'of the different objects',
-   'using the buttons at the',     'top of the form. Note that',
-   'some combinations might not',  'look too good. Also realize',
-   'that for all object classes',  'many different types are',
-   'available with different',     'behaviour.', ' ',
-   'With this demo you can also',  'see the effect of the drawing',
-   'mode on the appearance of the','objects.');
-
-
-var
-  ob : PFL_OBJECT;
-  c : TFL_COLOR;
-  p : ppchar;
-  vn : ^TVN_struct;
-  i : longint;
-  
-begin
-  c := FL_BLACK;
-  fl_initialize(@argc, argv, 'FormDemo', nil, 0);
-  create_the_forms ();
-  fl_set_bitmap_data (tobj[2], sorceress_width, sorceress_height, pchar(@sorceress_bits));
-  fl_add_chart_value (tobj[3], 15, 'item 1', c);inc(c);
-  fl_add_chart_value (tobj[3], 5, 'item 2', c);inc(c);
-  fl_add_chart_value (tobj[3], -10, 'item 3', c);inc(c);
-  fl_add_chart_value (tobj[3], 25, 'item 4', c);inc(c);
-  fl_set_menu (tobj[14], 'item 1|item 2|item 3|item 4|item 5');
-  fl_addto_choice (tobj[15], 'item 1');
-  fl_addto_choice (tobj[15], 'item 2');
-  fl_addto_choice (tobj[15], 'item 3');
-  fl_addto_choice (tobj[15], 'item 4');
-  fl_addto_choice (tobj[15], 'item 5');
-  fl_set_timer (tobj[16], 1000.0);
-  for i:=0 to 21 do 
-     fl_add_browser_line (tobj[17], browserlines[i]);
-  for i:= 0 to 15 do
-     fl_addto_choice(btypeob, btypes[i].name);
-  for i:=0 to 5 do
-      begin 
-      fl_addto_choice (modeob, gmode[i].name);
-      if (fl_mode_capable(gmode[i].theval, 0)=0) then
-        fl_set_choice_item_mode(modeob, i, FL_PUP_GRAY);
-      end;
-  fl_set_choice (modeob, fl_vmode+1); 
-   fl_show_form (form, FL_PLACE_MOUSE, border, 'Box types');
-  while (fl_do_forms <> exitob) do;
-end.  $Log$
-end.  Revision 1.2  2000-07-13 11:33:12  michael
-end.  + removed logs
-end. 
-}

+ 0 - 183
packages/forms/demo/browserall.pp

@@ -1,183 +0,0 @@
-{ This is a demo that shows the different types of browsers.  }
-
-
-uses forms,strings;
-
-var
-form : PFL_FORM;
-br : array[0..3] of PFL_OBJECT;
-exitobj, readout : PFL_OBJECT;
-
-
-const
-bnames : array[0..3] of pchar = 
-(
-    'NORMAL_BROWSER', 'SELECT_BROWSER', 'HOLD_BROWSER', 'MULTI_BROWSER'
-);
-
-
-procedure deselect(obj  : PFL_OBJECT ; arg : longint);export;
-var
-  i : longint ;
-begin
-  for i:=0 to 3 do
-     fl_deselect_browser(br[i]);
-end;
-
-procedure set_size(obj : PFL_OBJECT; arg : longint);export;
-var
-  i : longint;
-begin
-  for i:=0 to 3 do 
-     fl_set_browser_fontsize(br[i],arg);
-end;
-
-procedure set_style(obj : PFL_OBJECT; arg :  longint);export;
-var
-  i : longint;
-
-begin
-  for i:=0 to 3 do
-     fl_set_browser_fontstyle(br[i], arg);
-end;
-
-procedure br_callback(ob : PFL_OBJECT; arg : longint);export;
-var
-    buf : string[255];
-const
-    mb : array[0..3] of pchar = ('','left','middle','right');
-
-var i,b : longint;
-
-begin
-    b:=fl_mouse_button;
-    if (b < FL_SHORTCUT) then
-      buf :='In '+strpas(bnames[arg]) +'['+strpas(mb[b])+']'#0
-    else
-      buf:='In '+strpas(bnames[arg])+#0;
-    i := fl_get_browser(ob);
-    if i>0 then
-      begin
-      buf:=buf+strpas(fl_get_browser_line(ob,i)); 
-      buf:=buf+' was selected'#0
-      end
-    else 
-      begin
-      buf:=buf+strpas(fl_get_browser_line(ob,-i)); 
-      buf:=buf+' was deselected'#0
-      end;
-    fl_set_object_label(readout,@buf[1]);
-end;
-
-
-procedure create_form;
-var
-  obj : PFL_OBJECT;
-
-begin
-  form := fl_bgn_form(FL_UP_BOX,700,570);
-  readout := fl_add_text(FL_NORMAL_TEXT,50,30,600,50,'');
-  fl_set_object_lsize(readout,FL_LARGE_SIZE);
-  fl_set_object_lalign(readout,FL_ALIGN_CENTER);
-  fl_set_object_lstyle(readout,FL_BOLD_STYLE);
-  fl_set_object_boxtype(readout,FL_UP_BOX);
-
-  fl_set_object_color(readout,FL_MAGENTA,FL_MAGENTA);
-
-  obj:= fl_add_browser(FL_NORMAL_BROWSER,20,120,150,290,bnames[0]);
-  br[0] := obj ;
-    fl_set_object_callback(obj, PFL_CALLBACKPTR(@br_callback), 0);
-  obj:= fl_add_browser(FL_SELECT_BROWSER,190,120,150,290,bnames[1]);
-  br[1] := obj ;
-    fl_set_object_callback(obj, PFL_CALLBACKPTR(@br_callback), 1);
-  obj := fl_add_browser(FL_HOLD_BROWSER,360,120,150,290,bnames[2]);
-  br[2] := obj ;
-    fl_set_object_color(obj,FL_COL1,FL_GREEN);
-    fl_set_object_callback(obj, PFL_CALLBACKPTR(@br_callback), 2);
-  obj := fl_add_browser(FL_MULTI_BROWSER,530,120,150,290,bnames[3]);
-  br[3] := obj;
-    fl_set_object_color(br[3],FL_COL1,FL_CYAN);
-    fl_set_object_callback(obj, PFL_CALLBACKPTR(@br_callback), 3);
-
-  obj  := fl_add_button(FL_NORMAL_BUTTON,560,510,120,30,'Exit');
-  exitobj := obj;
-     obj := fl_add_button(FL_NORMAL_BUTTON,560,460,120,30,'Deselect');
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@deselect),0);
-
-  fl_bgn_group();
-  obj := fl_add_lightbutton(FL_RADIO_BUTTON,20,500,100,30,'Tiny');
-    fl_set_object_lsize(obj,FL_TINY_SIZE);
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@set_size),obj^.lsize);
-  obj := fl_add_lightbutton(FL_RADIO_BUTTON,130,500,100,30,'Small');
-    fl_set_object_lsize(obj,FL_SMALL_SIZE);
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@set_size),obj^.lsize);
-    fl_set_button(obj,1);
-  obj := fl_add_lightbutton(FL_RADIO_BUTTON,240,500,100,30,'Normal');
-    fl_set_object_lsize(obj,FL_NORMAL_SIZE);
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@set_size),obj^.lsize);
-  obj := fl_add_lightbutton(FL_RADIO_BUTTON,350,500,100,30,'Large');
-    fl_set_object_lsize(obj,FL_LARGE_SIZE);
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@set_size),obj^.lsize);
-  fl_end_group;
-
-  fl_bgn_group;
-  obj := fl_add_lightbutton(FL_RADIO_BUTTON,20,450,100,30,'Normal');
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@set_style),FL_NORMAL_STYLE);
-    fl_set_button(obj,1);
-  obj := fl_add_lightbutton(FL_RADIO_BUTTON,120,450,100,30,'Bold');
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@set_style),FL_BOLD_STYLE);
-  obj := fl_add_lightbutton(FL_RADIO_BUTTON,220,450,100,30,'Italic');
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@set_style),FL_ITALIC_STYLE);
-  obj := fl_add_lightbutton(FL_RADIO_BUTTON,320,450,100,30,'BoldItalic');
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@set_style),FL_BOLDITALIC_STYLE);
-  obj := fl_add_lightbutton(FL_RADIO_BUTTON,420,450,100,30,'Fixed');
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@set_style),FL_FIXED_STYLE);
-  fl_end_group;
-  fl_end_form;
-end;
-
-
-procedure fill_browsers;
-var
-  i, j : longint;
-  buf : string[128];
-
-begin
-  for i:=0 to 3 do
-    for j:=1 to 100 do 
-      begin
-      if ( j = 5) then
-        begin
-        str(j,buf);
-        buf:='@NLine with qb '+buf+#0;
-        end
-      else if ( j = 10) then
-        buf:='@-'#0
-      else if ( j = 40 ) then
-        begin
-        str(j,buf);
-        buf:='@mLine with qb '+buf+#0;
-        end
-      else
-        begin
-        str(j,buf);
-        buf:='Line with qb '+buf+#0;
-        end;
-      fl_add_browser_line(br[i],@buf[1]);
-      end
-end;
-
-
-begin
-  fl_initialize(@argc, argv, 'FormDemo', nil, 0);
-  create_form;
-  fill_browsers;
-  fl_show_form(form,FL_PLACE_CENTER,FL_TRANSIENT,'All Browsers');
-  fl_do_forms;
-  fl_hide_form(form);
-end.
-  $Log$
-  Revision 1.2  2000-07-13 11:33:13  michael
-  + removed logs
- 
-}

+ 0 - 94
packages/forms/demo/browserop.pp

@@ -1,94 +0,0 @@
-{ This demo shows the different routines on browsers }
-program browserop;
-
-uses forms;
-
-var
-form : PFL_FORM;
-browserobj, inputobj, exitobj : PFL_OBJECT;
-
-procedure addit(ob : PFL_OBJECT; arg : longint);export;
-begin
-  { append and show the last line. Don't use this if you just want
-   * to add some lines. use fl_add_browser_line
-   }
-  fl_addto_browser(browserobj,fl_get_input(inputobj));
-end;
-
-procedure insertit(ob : PFL_OBJECT ; arg : longint);export;
-var
-  n :  integer;
-begin
-  n:=fl_get_browser(browserobj);
-  if (n=0) then exit;
-  fl_insert_browser_line(browserobj,n,fl_get_input(inputobj));
-end;
-
-procedure replaceit(obj : PFL_OBJECT; arg : longint);export;
-var
-  n :  integer;
-begin
-  n:=fl_get_browser(browserobj);
-  if (n=0) then exit;
-  fl_replace_browser_line(browserobj,n,fl_get_input(inputobj));
-end;
-
-
-procedure deleteit(ob : PFL_OBJECT; arg : Longint);export;
-var
-  n :  integer;
-begin
-  n:=fl_get_browser(browserobj);
-  if (n=0) then exit;
-  fl_delete_browser_line(browserobj,n);
-end;
-
-procedure clearit(ob : PFL_OBJECT; arg : longint);export;
-begin
-  fl_clear_browser(browserobj);
-end;
-
-
-procedure create_form;
-var 
-  obj : PFL_OBJECT;
-
-begin
-  form := fl_bgn_form(FL_UP_BOX,390,420);
-  browserobj := fl_add_browser(FL_HOLD_BROWSER,20,20,210,330,'');
-    fl_set_object_dblbuffer(browserobj, 1);
-  obj:= fl_add_input(FL_NORMAL_INPUT,20,370,210,30,'');
-  inputobj := obj ;
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@addit),0);
-  obj := fl_add_button(FL_NORMAL_BUTTON,250,20,120,30,'Add');
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@addit),0);
-  obj := fl_add_button(FL_NORMAL_BUTTON,250,60,120,30,'Insert');
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@insertit),0);
-  obj := fl_add_button(FL_NORMAL_BUTTON,250,100,120,30,'Replace');
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@replaceit),0);
-  obj := fl_add_button(FL_NORMAL_BUTTON,250,160,120,30,'Delete');
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@deleteit),0);
-  obj := fl_add_button(FL_NORMAL_BUTTON,250,200,120,30,'Clear');
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@clearit),0);
-  exitobj := fl_add_button(FL_NORMAL_BUTTON,250,370,120,30,'Exit');
-  fl_end_form();
-end;
-
-{---------------------------------------}
-
-var obj : PFL_OBJECT;
-
-begin
-  fl_initialize(@argc, argv, 'FormDemo', nil, 0);
-  create_form;
-  fl_show_form(form,FL_PLACE_CENTER,FL_TRANSIENT,'Browser Op');
-  repeat 
-    obj := fl_do_forms 
-  until obj = exitobj;
-  fl_hide_form(form);
-end.
-  $Log$
-  Revision 1.2  2000-07-13 11:33:13  michael
-  + removed logs
- 
-}

+ 0 - 117
packages/forms/demo/buttonall.pp

@@ -1,117 +0,0 @@
-program buttonall;
-
-uses forms;
-
-type TFD_buttform = record
-	buttform : PFL_FORM;
-	vdata : pointer;
-	ldata : Longint;
-	backface,done,objsgroup,bbutt,pbutt,bw_obj : PFL_OBJECT;
-end;
-PFD_buttform = ^TFD_buttform;
-
-Procedure done_cb(ob : PFL_OBJECT; data :  longint);export;
-begin
-   halt(0);
-end;
-
-procedure bw_cb(ob : PFL_OBJECT; data : longint);export;
-
-const
-    bws : array [0..7] of longint = (-4,-3,-2,-1,1,2,3,4);
-var 
-  n : longint;
-  fdui : PFD_BUTTform;
-   
-begin
-    n:=fl_get_choice(ob)-1;
-    fdui:=ob^.form^.fdui;
-    fl_freeze_form(ob^.form);
-    fl_set_object_bw(fdui^.backface, bws[n]);
-    fl_set_object_bw(fdui^.objsgroup, bws[n]);
-    { redrawing the backface wipes out the done button. Redraw it }
-    fl_redraw_object(fdui^.done);
-    fl_unfreeze_form(ob^.form);
-end;
-
-
-function create_form_buttform : PFD_buttform;
-
-var
-  obj : PFL_OBJECT;
-  fdui : PFD_buttform;
-
-begin
-  new(fdui);
-  fdui^.buttform := fl_bgn_form(FL_NO_BOX, 290, 260);
-  obj := fl_add_box(FL_UP_BOX,0,0,290,260,'');
-  fdui^.backface := obj; 
-  obj := fl_add_button(FL_NORMAL_BUTTON,185,215,90,30,'Done');
-  fdui^.done := obj;    
-  fl_set_object_callback(obj,PFL_CALLBACKPTR(@done_cb),0);
-
-  fdui^.objsgroup := fl_bgn_group();
-  obj := fl_add_frame(FL_ENGRAVED_FRAME,175,170,100,30,'');
-    fl_set_object_color(obj,FL_COL1,FL_GREEN);
-  obj := fl_add_round3dbutton(FL_PUSH_BUTTON,210,170,30,30,'');
-    fl_set_object_color(obj,FL_COL1,FL_GREEN);
-  obj := fl_add_bitmapbutton(FL_NORMAL_BUTTON,25,85,40,40,'bitmapbutton');
-  fdui^.bbutt := obj ;
-    fl_set_object_color(obj,FL_COL1,FL_BLACK);
-  obj := fl_add_pixmapbutton(FL_NORMAL_BUTTON,25,25,40,40,'pixmapbutton');
-  fdui^.pbutt := obj;
-  obj := fl_add_checkbutton(FL_RADIO_BUTTON,100,31,70,32,'Red');
-    fl_set_object_color(obj,FL_COL1,FL_RED);
-  obj := fl_add_checkbutton(FL_RADIO_BUTTON,100,60,70,32,'Green');
-    fl_set_object_color(obj,FL_COL1,FL_GREEN);
-  obj := fl_add_checkbutton(FL_RADIO_BUTTON,100,90,70,32,'Blue');
-    fl_set_object_color(obj,FL_COL1,FL_BLUE);
-  obj := fl_add_lightbutton(FL_PUSH_BUTTON,20,170,92,30,'LightButton');
-    fl_set_button(obj, 1);
-  obj := fl_add_roundbutton(FL_PUSH_BUTTON,200,35,75,25,'Red');
-    fl_set_object_color(obj,FL_COL1,FL_RED);
-  obj := fl_add_roundbutton(FL_PUSH_BUTTON,200,64,75,25,'Green');
-    fl_set_object_color(obj,FL_COL1,FL_GREEN);
-  obj := fl_add_roundbutton(FL_PUSH_BUTTON,200,93,75,25,'Blue');
-    fl_set_object_color(obj,FL_COL1,FL_BLUE);
-  obj := fl_add_round3dbutton(FL_PUSH_BUTTON,180,170,30,30,'');
-    fl_set_object_color(obj,FL_COL1,FL_RED);
-  obj := fl_add_round3dbutton(FL_PUSH_BUTTON,240,170,30,30,'');
-    fl_set_object_color(obj,FL_COL1,FL_BLUE);
-  obj := fl_add_button(FL_PUSH_BUTTON,130,210,30,30,'go');
-    fl_set_object_boxtype(obj,FL_OVAL3D_UPBOX);
-    fl_set_object_lstyle(obj,FL_BOLD_STYLE);
-  obj := fl_add_button(FL_NORMAL_BUTTON,20,210,90,30,'Button');
-    fl_set_object_boxtype(obj,FL_ROUNDED3D_UPBOX);
-  obj := fl_add_choice(FL_NORMAL_CHOICE2,105,135,80,30,'BW');
-  fdui^.bw_obj := obj;   
-  fl_set_object_callback(obj,PFL_CALLBACKPTR(@bw_cb),0);
-  obj := fl_add_labelframe(FL_ENGRAVED_FRAME,190,25,85,100,'RoundButton');
-  obj := fl_add_labelframe(FL_ENGRAVED_FRAME,90,25,90,100,'CheckButton');
-  fl_end_group();
-
-  fl_end_form();
-
-  fdui^.buttform^.fdui := fdui;
-  create_form_buttform:=fdui;
-end;
-
-var   fd_buttform : PFD_buttform;
-
-begin
-   fl_initialize(@argc, argv, '', nil, 0);
-   fd_buttform := create_form_buttform;
-
-   fl_set_pixmapbutton_file(fd_buttform^.pbutt,'crab45.xpm');
-   fl_set_bitmapbutton_file(fd_buttform^.bbutt,'bm1.xbm');
-   fl_addto_choice(fd_buttform^.bw_obj,' -4 | -3 | -2 | -1 |  1|  2|  3|  4');
-   fl_set_choice(fd_buttform^.bw_obj,7);
-
-   fl_show_form(fd_buttform^.buttform,FL_PLACE_CENTER,FL_FULLBORDER,'buttform');
-   while (fl_do_forms<>nil) do ;
-end.
-  $Log$
-  Revision 1.2  2000-07-13 11:33:13  michael
-  + removed logs
- 
-}

+ 0 - 100
packages/forms/demo/butttypes.pp

@@ -1,100 +0,0 @@
-program butttypes;
-
-uses strings,forms;
-
-type TFD_form0 = record
-	form0 : PFL_FORM;
-	vdata : pointer;
-	ldata : longint;
-	br : PFL_OBJECT;
-end;
-PFD_form0 = ^TFD_form0;
-
-{ callbacks for form form0 }
-procedure button_cb(ob : PFL_OBJECT; data : longint);export;
-var
-   ui : PFD_form0;
-  buf : string [128];
-
-begin
-   ui:=ob^.form^.fdui;
-   if (ob^.thetype = FL_HIDDEN_BUTTON ) then
-     begin
-      if (fl_show_question('Want to Quit ?', 1) = 1) then
-	halt(0);
-     end
-   else
-     begin
-      str (fl_get_button(ob),buf);
-      buf:=strpas(ob^ .thelabel)+'callback called from '+ buf+#0;
-      fl_addto_browser(ui^.br, @buf[1]);
-    end;
-end;
-
-{ Form definition file generated with fdesign. }
-
-
-function create_form_form0 : PFD_form0;
-var
-  obj : PFL_OBJECT;
-  fdui : PFD_form0;
-
-begin
-  new(fdui);
-  fdui^.form0 := fl_bgn_form(FL_NO_BOX, 360, 300);
-  obj := fl_add_box(FL_UP_BOX,0,0,360,300,'');
-  obj := fl_add_button(FL_HIDDEN_BUTTON,0,0,360,300,'');
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@button_cb),0);
-  obj := fl_add_button(FL_INOUT_BUTTON,20,168,105,30,'InOutButton');
-    fl_set_object_lstyle(obj,FL_BOLD_STYLE);
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@button_cb),0);
-  obj := fl_add_button(FL_NORMAL_BUTTON,20,15,105,30,'NormalButton');
-    fl_set_object_lstyle(obj,FL_BOLD_STYLE);
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@button_cb),0);
-  obj := fl_add_button(FL_PUSH_BUTTON,20,53,105,30,'PushButton');
-    fl_set_object_lstyle(obj,FL_BOLD_STYLE);
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@button_cb),0);
-  obj := fl_add_button(FL_TOUCH_BUTTON,20,130,105,30,'TouchButton');
-    fl_set_object_lstyle(obj,FL_BOLD_STYLE);
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@button_cb),0);
-  obj := fl_add_button(FL_MENU_BUTTON,20,206,105,30,'MenuButton');
-    fl_set_object_lstyle(obj,FL_BOLD_STYLE);
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@button_cb),0);
-  obj := fl_add_button(FL_RETURN_BUTTON,20,244,105,30,'ReturnButton');
-    fl_set_object_lstyle(obj,FL_BOLD_STYLE);
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@button_cb),0);
-  obj := fl_add_button(FL_RADIO_BUTTON,20,91,105,30,'RadioButton');
-    fl_set_object_lstyle(obj,FL_BOLD_STYLE);
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@button_cb),0);
-    obj := fl_add_browser(FL_NORMAL_BROWSER,135,15,210,260,'');
-    fdui^.br :=obj;  
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@button_cb),0);
-  fl_end_form();
-
-  fl_adjust_form_size(fdui^.form0);
-  fdui^.form0^.fdui := fdui;
-
-  create_form_form0:= fdui;
-end;
-
-
-
-
-var
-   fd_form0 : PFD_form0;
-
-begin
-   fl_initialize(@argc, argv, '', nil, 0);
-   fd_form0 := create_form_form0;
-
-   { fill-in form initialization code }
-
-   { show the first form }
-   fl_show_form(fd_form0^.form0,FL_PLACE_CENTER,FL_FULLBORDER,'form0');
-   fl_do_forms();
-end.
-  $Log$
-  Revision 1.2  2000-07-13 11:33:13  michael
-  + removed logs
- 
-}

+ 0 - 248
packages/forms/demo/canvas.pp

@@ -1,248 +0,0 @@
-{ Demo showing the use of canvas object.   V0.75
- }
-
-uses forms,x,xlib;
-
-{*** Forms and Objects ***}
-
-type TFD_canvasform = record
-	canvasform : PFL_FORM;
-	vdata : pointer;
-	ldata : longint;
-	canvas,
-	br,
-	keyboard,
-	mouse,
-	done,
-	misc,
-	menu : PFL_OBJECT;
-end;
-
-PFD_canvasform = ^TFD_canvasform;
-
-
-Var canvasGC : TGC;
-
-
-function canvas_expose(ob : PFL_OBJECT;win : TWindow; w,h : longint; ev : PXEvent;d : Pointer) : longint;export;
-
-var ui : PFD_CANVASFORM;
-
-begin
-    ui := d;
-    XFillRectangle(PDisplay(fl_display), TDRAWABLE(win), canvasGC, 0, 0,cardinal( w), cardinal(h));
-    fl_addto_browser(ui^.br, 'Expose');
-end;
-
- 
-function canvas_key(ob : PFL_OBJECT; win : TWindow; w,h : Longint; ev : PXEvent; d: pointer) : longint;export;
-var
-   ui :PFD_canvasform;
-   buf : string[128];
-
-
-begin
-    ui := d;
-    str (XKeycodeToKeysym(PDisplay(fl_display),ev^.xkey.keycode, TkeyCode(#0)),buf);
-    buf:= 'KeyPress: keysym='+buf+#0; 
-    fl_addto_browser(ui^.br, @buf[1]);
-    return 0;
-end;
-
- 
-function canvas_but(ob : PFL_OBJECT; win : TWindow; w,h : longint, ev : PXEvent;d : pointer) : longint;export;
-
-var
-    ui : PFD_canvasform;
-    buf : string[128];
-
-begin
-  ui := d;
-  
-  str(ev^.xbutton.button,buf);
-  if ev^.eventtype=ButtonPress then
-    buf:='Press '+buf
-  else
-    buf:='Release '+buf;
-  buf:='Button '+buf+#0;
-    fl_addto_browser(ui^.br, @buf[1]);
-end;
-
-function canvas_misc(ob : PFL_OBJECT; win : TWindow; w,h : longint, ev : PXEvent;d : pointer) : longint;export;
-
-var
-
-   ui : PFD_canvasform; 
-begin
-  ui := d;
-  if ev^.xcrossing.eventtype=EnterNotify then
-  fl_addto_browser(ui^.br, 'Enter Canvas')
-  else
-  fl_addto_browser(ui^.br, 'Leave Canvas')
-end;
-
-procedure init_canvas(FD_canvasform *fdui)
-
-begin
-   fl_add_canvas_handler(fdui^.canvas, Expose, PFL_HANDLE_CANVAS(@canvas_expose), fdui);
-   fl_add_canvas_handler(fdui^.canvas, KeyPress, PFL_HANDLE_CANVAS(@canvas_key), fdui);
-   fl_add_canvas_handler(fdui^.canvas, ButtonPress,PFL_HANDLE_CANVAS(@canvas_but),fdui);
-   fl_add_canvas_handler(fdui^.canvas, ButtonRelease,PFL_HANDLE_CANVAS(canvas_but),fdui);
-   fl_set_button(fdui^.mouse, 1);
-   fl_set_button(fdui^.keyboard, 1);
-   canvasGC := XCreateGC(fl_get_display(),fl_state[fl_vmode].trailblazer,0,0);
-   XSetForeground(fl_get_display(), canvasGC, fl_get_flcolor(FL_BLACK));
-end;
-
-var
-fd_canvasform : PFD_canvasform;
-
-procedure sensitive_setting(ob : PFL_OBJECT ; event : longint); export;
-
-var
-    hc : PFL_HANDLE_CANVAS;
-begin
- if event=Keypress then
-   hc := PFL_HANDLE_CANVAS(@canvas_key)
- else
-  hc := PFL_HANDLE_CANVAS(@canvas_but);
-
-    if(fl_get_button(ob)<>0) then
-       fl_add_canvas_handler(fd_canvasform^.canvas, event, hc, fd_canvasform);
-    else
-       fl_remove_canvas_handler(fd_canvasform^.canvas, event, hc);
-end;
-
-procedure disable_it(ob : PFL_OBJECT; data : longint);export;
-
-begin
-    if fl_get_button(ob)<>0 then 
-      fl_deactivate_object(fd_canvasform^.canvas)
-    else
-      fl_activate_object (fd_canvasform^.canvas);
-end;
-
-procedure hide_it(ob : PFL_OBJECT; all : longint);export;
-
-
-begin
-      if(all<>0) then
-        begin
-         fl_hide_form(fd_canvasform^.canvasform);
-         fl_show_form(fd_canvasform^.canvasform,
-                      FL_PLACE_CENTER, FL_TRANSIENT, 'canvas');
-{$ifdef nevertrue}
-       fl_remove_selected_xevent(fd_canvasform^.canvasform^.window,
-            OwnerGrabButtonMask);
-{$endif }
-        end       
-      else
-       begin
-         if(fd_canvasform^.canvas^.visible)<>0 then
-           begin
-            fl_hide_object(fd_canvasform^.canvas);
-            fl_set_object_label(ob,'ShowCanvas');
-           end
-         else
-           begin
-            fl_show_object(fd_canvasform^.canvas);
-            fl_set_object_label(ob,'HideCanvas');
-           end
-        end;
-end;
-
-procedure misc_cb(ob : PFL_OBJECT; data : longint); export;
-
-begin
-    if(fl_get_button(ob)<>0) then
-      begin
-       fl_add_canvas_handler(fd_canvasform^.canvas, EnterNotify, 
-                             PFL_HANDLE_CANVAS(@canvas_misc), fd_canvasform);
-       fl_add_canvas_handler(fd_canvasform^.canvas, LeaveNotify,
-                             PFL_HANDLE_CANVAS(@canvas_misc), fd_canvasform);
-      end
-    else
-      begin
-       fl_remove_canvas_handler(fd_canvasform^.canvas, 
-                                EnterNotify, PFL_HANDLE_CANVAS(@canvas_misc));
-       fl_remove_canvas_handler(fd_canvasform^.canvas, 
-                                LeaveNotify, PFL_HANDLE_CANVAS(@canvas_misc));
-      end;
-end;
-
-{*****************}
-function create_form_canvasform : PFD_canvasform;
-var
-  obj :=PFL_OBJECT;
-  fdui : PFD_canvasform;
-
-begin
-  new(fdui);
-
-  fdui^.canvasform := fl_bgn_form(FL_NO_BOX, 450, 280);
-  obj := fl_add_box(FL_UP_BOX,0,0,450,280,'');
-  obj:= fl_add_canvas(FL_NORMAL_CANVAS,20,40,155,187,'');
-  fdui^.canvas := obj ;
-  obj := fl_add_browser(FL_NORMAL_BROWSER,188,40,152,187,'');
-  fdui^.br := obj ;
-    obj := fl_add_button(FL_PUSH_BUTTON,30,236,90,27,'Deactivate');
-    fl_set_object_callback(obj,disable_it,0);
-  obj := fl_add_button(FL_NORMAL_BUTTON,120,236,90,27,'HideCanvas');
-    fl_set_object_callback(obj, hide_it, 0);
-  obj := fl_add_button(FL_NORMAL_BUTTON,210,236,90,27,'HideForm');
-    fl_set_object_callback(obj, hide_it, 1);
-  obj := fl_add_button(FL_NORMAL_BUTTON,300,236,90,27,'Done');
-  fdui^.done := obj ;
-  obj := fl_add_text(FL_NORMAL_TEXT,130,10,120,20,'Canvas');
-    fl_set_object_lsize(obj,FL_MEDIUM_SIZE);
-    fl_set_object_lalign(obj,FL_ALIGN_CENTER);
-    fl_set_object_lstyle(obj,FL_BOLD_STYLE);
-  obj:= fl_add_menu(FL_PULLDOWN_MENU, 20,10, 45,22,'Menu');
-  fdui^.menu := obj ;
-    fl_set_object_shortcut(obj,'#m', 1);
-    fl_set_object_lstyle(obj, FL_BOLD_STYLE);
-  obj := fl_add_checkbutton(FL_PUSH_BUTTON,345,40,76,26,'Keyboard');
-  fdui^.keyboard := obj ;
-    fl_set_object_color(obj,FL_COL1,FL_BLUE);
-    fl_set_object_callback(obj,sensitive_setting,KeyPress);
-  obj := fl_add_checkbutton(FL_PUSH_BUTTON,345,70,76,26,'Mouse');
-    fdui^.mouse := obj ;
-    fl_set_object_color(obj,FL_COL1,FL_BLUE);
-    fl_set_object_callback(obj,sensitive_setting,ButtonPress);
- obj := fl_add_checkbutton(FL_PUSH_BUTTON,345,100,74,26,'Enter/Leave');
-    fdui^.misc := obj;
-    fl_set_object_color(obj,FL_COL1,FL_BLUE);
-    fl_set_object_callback(obj,misc_cb,ButtonPress);
-  fl_end_form();
-
-  create_form_canvasform :=fdui;
-end;
-
-
-begin
-   fl_set_border_width(-2);
-
-   fl_initialize(@argc, argv, 'FormDemo', nil, 0);
-   fd_canvasform := create_form_canvasform;
-
-   { fill-in form initialization code }
-   fl_set_object_dblbuffer(fd_canvasform^.br, 1); { looks better }
-   init_canvas (fd_canvasform);
-
-   fl_addto_menu(fd_canvasform^.menu,'Item1|Item2|Item3|Item4');
-
-   fl_show_form(fd_canvasform^.canvasform,
-                FL_PLACE_FREE,FL_FULLBORDER,'canvasform');
-{$ifdef nevertrue}
-         fl_remove_selected_xevent(fd_canvasform^.canvasform^.window,
-            OwnerGrabButtonMask);
-{$endif}
-
-   while (fl_do_forms() <> fd_canvasform^.done) do  ;
-end.
-
-  $Log$
-  Revision 1.2  2000-07-13 11:33:13  michael
-  + removed logs
- 
-}

+ 0 - 87
packages/forms/demo/chartall.pp

@@ -1,87 +0,0 @@
-program chartall;
-{ Showing all different charts }
-
-{ Form definition file generated with fdesign. }
-uses forms;
-
-var
-  form : PFL_FORM;
-
-        barchart,
-        linechart,
-        filledchart,
-        piechart,
-        specialpiechart,
-        exitbut,
-        horbarchart,
-        spikechart : PFL_OBJECT;
-
-procedure create_form_form;
-
-var
-  obj : PFL_OBJECT;
-
-begin
-  form := fl_bgn_form(FL_NO_BOX,940,360);
-  obj := fl_add_box(FL_UP_BOX,0,0,940,360,'');
-  obj := fl_add_chart(FL_BAR_CHART,20,20,210,140,'BAR_CHART');
-  barchart := obj;
-    fl_set_object_boxtype(obj,FL_RSHADOW_BOX);
-  obj := fl_add_chart(FL_LINE_CHART,250,20,210,140,'LINE_CHART');
-  linechart := obj ;
-    fl_set_object_boxtype(obj,FL_RSHADOW_BOX);
-  obj := fl_add_chart(FL_FILL_CHART,250,190,210,140,'FILL_CHART');
-  filledchart := obj   ;
-  fl_set_object_boxtype(obj,FL_RSHADOW_BOX);
-  obj := fl_add_chart(FL_PIE_CHART,480,190,210,140,'PIE_CHART');
-  piechart := obj;
-    fl_set_object_boxtype(obj,FL_RSHADOW_BOX);
-  obj:= fl_add_chart(FL_SPECIALPIE_CHART,710,20,210,140,'SPECIALPIE_CHART');
-  specialpiechart := obj ;
-    fl_set_object_boxtype(obj,FL_RSHADOW_BOX);
-  obj := fl_add_button(FL_NORMAL_BUTTON,750,260,140,30,'Exit');
-  exitbut := obj;
-  obj:= fl_add_chart(FL_HORBAR_CHART,20,190,210,140,'HORBAR_CHART');
-  horbarchart := obj;
-     fl_set_object_boxtype(obj,FL_RSHADOW_BOX);
-  obj:= fl_add_chart(FL_SPIKE_CHART,480,20,210,140,'SPIKE_CHART');
-  spikechart := obj;
-     fl_set_object_boxtype(obj,FL_RSHADOW_BOX);
-  fl_end_form();
-end;
-
-{---------------------------------------}
-
-procedure fill_in(ob : PFL_OBJECT);
-
-var c : longint;
-
-begin
-  c := FL_BLACK+1;
-  fl_add_chart_value(ob,15.0,'item 1',c); inc(c);
-  fl_add_chart_value(ob,5.0,'item 2',c);inc(c);
-  fl_add_chart_value(ob,0.0,'item 3',c);inc(c);
-  fl_add_chart_value(ob,-10.0,'item 4',c);inc(c);
-  fl_add_chart_value(ob,25.0,'item 5',c);inc(c);
-  fl_add_chart_value(ob,12.0,'item 6',c);inc(c);
-end;
-
-begin
-
-  fl_initialize(@argc, argv, 'FormDemo', nil, 0);
-  create_form_form();
-  fill_in(barchart);
-  fill_in(horbarchart);
-  fill_in(linechart);
-  fill_in(filledchart);
-  fill_in(spikechart);
-  fill_in(piechart);
-  fill_in(specialpiechart);
-  fl_show_form(form,FL_PLACE_CENTER,FL_TRANSIENT,'Charts');
-  fl_do_forms();
-end.
-  $Log$
-  Revision 1.2  2000-07-13 11:33:14  michael
-  + removed logs
- 
-}

+ 0 - 126
packages/forms/demo/chartstrip.pp

@@ -1,126 +0,0 @@
-{ A demo of a moving chart }
-program chartstrip;
-
-uses forms,xlib;
-
-var
- func : longint; 
- xx    : double; 
- step : double;
-
- form : PFL_FORM;
-
- chartobj,sinobj,exitbut,stepobj : PFL_OBJECT;
-
-procedure set_function(obj : PFL_OBJECT; arg : longint);export;
-begin
-   func := arg; 
-   fl_clear_chart(chartobj); 
-   xx := 0.0;
-end;
-
-procedure set_step(obj : PFL_OBJECT; arg : longint);export;
-
-begin
-    step := fl_get_slider_value(stepobj);
-end;
-
-{***********************************************}
-
-procedure create_form_form;
-
-var obj : PFL_OBJECT;
-
-begin
-  form := fl_bgn_form(FL_NO_BOX,490,320);
-  obj := fl_add_box(FL_BORDER_BOX,0,0,490,320,'');
-  obj := fl_add_chart(FL_LINE_CHART,20,160,390,140,'');
-  chartobj := obj;
-  fl_set_object_dblbuffer(obj,1);
-
-  fl_bgn_group();
-  obj := fl_add_lightbutton(FL_RADIO_BUTTON,30,120,170,30,'sin(x)');
-  sinobj := obj ;
-    fl_set_object_boxtype(obj,FL_BORDER_BOX);
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@set_function),1);
-  obj := fl_add_lightbutton(FL_RADIO_BUTTON,30,90,170,30,'sin(2x)*cos(x)');
-    fl_set_object_boxtype(obj,FL_BORDER_BOX);
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@set_function),2);
-  obj := fl_add_lightbutton(FL_RADIO_BUTTON,30,60,170,30,'sin(2x)+cos(x)');
-    fl_set_object_boxtype(obj,FL_BORDER_BOX);
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@set_function),3);
-  obj := fl_add_lightbutton(FL_RADIO_BUTTON,240,120,160,30,'sin(3x)+cos(x)');
-    fl_set_object_boxtype(obj,FL_BORDER_BOX);
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@set_function),4);
-  obj := fl_add_lightbutton(FL_RADIO_BUTTON,240,90,160,30,'sin(x)^2 + cos(x)');
-    fl_set_object_boxtype(obj,FL_BORDER_BOX);
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@set_function),5);
-  obj := fl_add_lightbutton(FL_RADIO_BUTTON,240,60,160,30,'sin(x)^3');
-    fl_set_object_boxtype(obj,FL_BORDER_BOX);
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@set_function),6);
-  fl_end_group();
-
-  obj := fl_add_button(FL_NORMAL_BUTTON,150,20,140,30,'Exit');
-  exitbut := obj;
-    fl_set_object_boxtype(obj,FL_BORDER_BOX);
-  obj:= fl_add_valslider(FL_VERT_SLIDER,430,20,40,280,'');
-  stepobj := obj ;
-    fl_set_object_boxtype(obj,FL_BORDER_BOX);
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@set_step),0);
-  fl_end_form;
-end;
-
-{**********************************}
-
-function next_step : double;
-
-var res : double;
-
-begin
-  res := 0.0;
-  case func of
-     1: res := sin(xx); 
-     2: res := sin(2*xx)*cos(xx); 
-     3: res := sin(2*xx)+cos(xx); 
-     4: res := sin(3*xx)+cos(xx); 
-     5: res := sin(xx)*sin(xx) + cos(xx); 
-     6: res := sin(xx)*sin(xx)*sin(xx); 
-  end;
-  xx := xx+step;
-  next_step:=res;
-end;
-
-function idle_cb (ex : PXEvent; d : pointer) : longint;
-begin
-    fl_insert_chart_value(chartobj,1,next_step(),'',1);
-end;
-
-var obj : PFL_OBJECT;
-
-begin
-  func:= 1;
-  xx:= 0.0;
-  step:= 0.15;
-  fl_flip_yorigin();
-  fl_initialize(@argc, argv, 'FormDemo', nil, 0);
-  create_form_form();
-  fl_set_chart_bounds(chartobj,-1.5,1.5);
-  fl_set_chart_maxnumb(chartobj,80);
-  fl_set_chart_autosize(chartobj,0);
-  fl_set_button(sinobj,1);
-  fl_set_slider_value(stepobj,0.15);
-  fl_set_slider_bounds(stepobj,0.0,0.4);
-{$ifdef nevertrue}
-  fl_set_idle_delta(15);
-{$endif }
-  fl_show_form(form,FL_PLACE_CENTER,FL_NOBORDER,'StripChart');
-  repeat
-    fl_insert_chart_value(chartobj,1,next_step(),'',1);
-    obj := fl_check_forms();
-  until obj = exitbut;
-end.
-  $Log$
-  Revision 1.2  2000-07-13 11:33:14  michael
-  + removed logs
- 
-}

+ 0 - 57
packages/forms/demo/choice.pp

@@ -1,57 +0,0 @@
-{ This demo shows the use of choice objects.  }
-
-program choice;
-
-uses forms;
-
-
-var form : PFL_FORM;
-    sexobj,childobj,licenceobj,marriedobj,readyobj : PFL_OBJECT;
-
-procedure  cb( ob : PFL_OBJECT; data : longint);export;
-
-begin
-   Writeln ('CallBack: ', fl_get_choice(ob));
-end;
-
-procedure create_form;
-
-begin
-  form := fl_bgn_form(FL_NO_BOX,420,360);
-  fl_add_box(FL_UP_BOX,0,0,420,360,'');
-  fl_add_input(FL_NORMAL_INPUT,70,300,320,30,'Name');
-  fl_add_input(FL_NORMAL_INPUT,70,260,320,30,'Address');
-  fl_add_input(FL_NORMAL_INPUT,70,220,320,30,'City');
-  fl_add_input(FL_NORMAL_INPUT,70,180,320,30,'Country');
-  sexobj := fl_add_choice(FL_NORMAL_CHOICE,70,130,110,30,'Sex');
-  childobj := fl_add_choice(FL_NORMAL_CHOICE,280,130,110,30,'Children');
-  licenceobj := fl_add_choice(FL_NORMAL_CHOICE,280,80,110,30,'Licence');
-  marriedobj := fl_add_choice(FL_DROPLIST_CHOICE,70,80,110,30,'Married');
-   fl_set_object_callback(marriedobj, PFL_CALLBACKPTR(@cb),0);
-  readyobj := fl_add_button(FL_NORMAL_BUTTON,150,20,140,30,'Ready');
-  fl_end_form;
-end;
-
-var obj : PFL_OBJECT;
-
-begin
-
-  fl_flip_yorigin;
-  fl_initialize(@argc, argv, 'FormDemo', nil, 0);
-  create_form;
-  fl_addto_choice(sexobj,'Male');
-  fl_addto_choice(sexobj,'Female');
-  fl_addto_choice(childobj,'Zero|One|Two|Three|Many');
-  fl_addto_choice(licenceobj,'Yes');
-  fl_addto_choice(licenceobj,'No');
-  fl_addto_choice(marriedobj,'Yes');
-  fl_addto_choice(marriedobj,'No');
-  fl_show_form(form,FL_PLACE_CENTER,FL_NOBORDER,Nil);
-  while (obj <> readyobj) do obj := fl_do_forms;
-  fl_hide_form(form);
-end.
-  $Log$
-  Revision 1.2  2000-07-13 11:33:14  michael
-  + removed logs
- 
-}

+ 0 - 286
packages/forms/demo/colbrowser.pp

@@ -1,286 +0,0 @@
-Program colbrowser;
-
-uses forms,strings;
-
-Const  MAX_RGB = 3000;
-
-var
-  cl : PFL_FORM;
-  rescol, dbobj, colbr, rs, gs, bs : PFL_OBJECT;
-  dbname : string;
-  infile : text;
-
-{ the RGB data file does not have a standard location on unix. }
-{ You may need to edit this }
-
-const rgbfile = '/usr/lib/X11/rgb.txt';
-
-type TRGBdb = record 
-       r, g, b : longint;
-     end;
-
-var
-rgbdb : array [0..MAX_RGB] of TRGBdb;
-numcol : longint;
-
-procedure set_entry(i : longint);
-
-var 
-    db : TRGBdb;
-
-begin
-  db := rgbdb[i-1];
-
-    fl_freeze_form(cl);
-    fl_mapcolor(FL_FREE_COL4+i, db.r, db.g, db.b);
-    fl_mapcolor(FL_FREE_COL4, db.r, db.g, db.b);
-    fl_set_slider_value(rs, db.r);
-    fl_set_slider_value(gs, db.g);
-    fl_set_slider_value(bs, db.b);
-    fl_redraw_object(rescol);
-    fl_unfreeze_form(cl);
-end;
-
-procedure br_cb(ob : PFL_OBJECT; q :longint);export;
-
-var r : longint;
-
-begin
-    r := fl_get_browser(ob);
-    if (r <= 0) then exit;
-    set_entry(r - 1);
-end;
-
-{ slow but straightforward }
-function stripsp (s : string) : string;
-
-var temp : string;
-    i : longint;
-begin
-  temp:='';
-  for i:=1 to length(s) do
-    if pos(s[i],'0987654321')<>0 then temp:=temp+s[i];
-  stripsp:=temp;
-end;
-
-
-function  read_entry(Var r,g,b : longint;var name : string) : longint;
-
-var
-    n : longint;
-    buf,temp : string;
-    code : word;
-
-
-begin
-    readln (infile,buf);
-    if buf[1]='!' then exit(0);    
-    temp:=stripsp(copy(buf,1,4));delete(buf,1,4);
-    val (temp,r,code);
-    if code<>0 then exit(0);
-    temp:=stripsp(copy(buf,1,4));delete(buf,1,4);
-    val (temp,g,code);
-    if code<>0 then exit(0);
-    temp:=stripsp(copy(buf,1,4));delete(buf,1,4);
-    val (temp,b,code);
-    if code<>0 then exit(0);
-    { strip leading spaces from name }
-    while (buf[code+1]=' ') or (buf[code+1]=#9) do inc(code);
-    if code<>0 then delete(buf,1,code);
-    name:=buf+#0;    
-    read_entry:=1;
-end;
-
-
-function load_browser(fname : string) : longint;
-
-var buf : string;
-    r,g,b : Longint;
-    rr,gg,bb : string[3];
-    
-begin
-   assign (infile,fname);
-{$i-}
-  reset(infile);
-{$i+}
-  if ioresult<>0 then
-    begin
-      fname:=fname+#0;
-	fl_show_alert('Load', @fname[1], 'Can''t open', 0);
-	exit(0);
-    end;
-
-    fl_freeze_form(cl);
-    numcol:=-1;
-    while not eof(infile) do
-      begin
-      if read_entry(r, g, b, buf)<>0 then
-        begin
-        inc(numcol);
-	rgbdb[numcol].r := r;
-	rgbdb[numcol].g := g;
-	rgbdb[numcol].b := b;
-        str (r,rr); if length(rr)<3 then rr:=copy('   ',1,3-length(rr))+rr;
-        str(g,gg);if length(gg)<3 then gg:=copy('   ',1,3-length(gg))+gg;
-        str(b,bb);if length(bb)<3 then bb:=copy('   ',1,3-length(bb))+bb;
-        buf:='('+rr+' '+gg+' '+bb+') '+buf;
-	fl_addto_browser(colbr, @buf[1]);
-	end;
-      end;
-    close(infile);
-    fl_set_browser_topline(colbr, 1);
-    fl_select_browser_line(colbr, 1);
-    set_entry(0);
-    fl_unfreeze_form(cl);
-    load_browser:=1;
-end;
-
-function search_entry(r,g,b : Longint) : Longint;
-
-var i, j, diffr, diffg, diffb,diff, mindiff : longint;
-
-begin
-    mindiff := 1 shl 25;
-    J:=0;
-    i:=0;
-    for i:=0 to numcol do
-      begin
-       diffr := abs(r - rgbdb[i].r);
-       diffg := abs(g - rgbdb[i].g);
-       diffb := abs(b - rgbdb[i].b);
-       diff := round((3.0 * diffr) +
-	       (5.9 * diffg) +
-	       (1.1 * diffb));
-       if (mindiff > diff) then
-	 begin
-	 mindiff := diff;
-         j := i;
-	 end;
-      end;
-    search_entry:= j;
-end;
-
-procedure search_rgb(ob : PFL_OBJECT; q : longint);export;
-
-var r, g, b, i,top : longint;
-
-begin
-    top  := fl_get_browser_topline(colbr);
-    r := round(fl_get_slider_value(rs));
-    g := round(fl_get_slider_value(gs));
-    b := round(fl_get_slider_value(bs));
-
-    fl_freeze_form(cl);
-    fl_mapcolor(FL_FREE_COL4, r, g, b);
-    fl_redraw_object(rescol);
-    i := search_entry(r, g, b);
-    { change topline only if necessary }
-    if (i < top) or (i > (top+15)) then
-       fl_set_browser_topline(colbr, i-8);
-    fl_select_browser_line(colbr, i + 1);
-    fl_unfreeze_form(cl);
-end;
-
-{ change database }
-procedure db_cb(ob : PFL_OBJECT; q : longint);export;
-
-var p: pchar;
-    buf : string;
-    
-begin
-    p := fl_show_input('Enter New Database Name', @dbname[1]);
-    buf:=strpas(p)+#0;
-    if buf=dbname then exit;
-
-    if (load_browser(buf)<>0) then
-	dbname:=buf
-    else
-	fl_set_object_label(ob, @dbname[1]);
-end;
-
-procedure done_cb (ob : PFL_OBJECT; q :  longint);export;
-begin
-    halt(0);
-end;
-
-procedure create_form_cl;
-var
-    obj : PFL_OBJECT;
-
-begin
-    if (cl<>nil) then exit;
-    cl := fl_bgn_form(FL_NO_BOX, 330, 385);
-    obj := fl_add_box(FL_UP_BOX, 0, 0, 330, 385, '');
-    fl_set_object_color(obj, FL_INDIANRED, FL_COL1);
-    obj := fl_add_box(FL_NO_BOX, 40, 10, 250, 30, 'Color Browser');
-    fl_set_object_lcol(obj, FL_RED);
-    fl_set_object_lsize(obj, FL_HUGE_SIZE);
-    fl_set_object_lstyle(obj, FL_BOLD_STYLE + FL_SHADOW_STYLE);
-    obj := fl_add_button(FL_NORMAL_BUTTON, 40, 50, 250, 25, '');
-    dbobj := obj ;
-    fl_set_object_boxtype(obj, FL_BORDER_BOX);
-{    if fl_get_visual_depth()=1 then
-      fl_set_object_color(obj, FL_WHITE,FL_INDIANRED)
-    else
-      fl_set_object_color(obj, FL_INDIANRED, FL_INDIANRED);
-}
-    fl_set_object_callback(obj, PFL_CALLBACKPTR(@db_cb), 0);
-
-    obj:= fl_add_valslider(FL_VERT_FILL_SLIDER, 225, 130, 30, 200, '');
-    rs := obj; 
-    fl_set_object_color(obj, FL_INDIANRED, FL_RED);
-    fl_set_slider_bounds(obj, 0, 255);
-    fl_set_slider_precision(obj, 0);
-    fl_set_object_callback(obj, PFL_CALLBACKPTR(@search_rgb), 0);
-    fl_set_slider_return(obj, 0);
-    obj:= fl_add_valslider(FL_VERT_FILL_SLIDER, 255, 130, 30, 200, '');
-    gs := obj ;
-    fl_set_object_color(obj, FL_INDIANRED, FL_GREEN);
-    fl_set_slider_bounds(obj, 0.0, 255.0);
-    fl_set_slider_precision(obj, 0);
-    fl_set_object_callback(obj, PFL_CALLBACKPTR(@search_rgb), 1);
-    fl_set_slider_return(obj, 0);
-    obj := fl_add_valslider(FL_VERT_FILL_SLIDER, 285, 130, 30, 200, '');
-    bs := obj; 
-    fl_set_object_color(obj, FL_INDIANRED, FL_BLUE);
-    fl_set_slider_bounds(obj, double(0.0), double(255.0));
-    fl_set_slider_precision(obj, 0);
-    fl_set_object_callback(obj, PFL_CALLBACKPTR(@search_rgb), 2);
-    fl_set_slider_return(obj, 0);
-    obj := fl_add_browser(FL_HOLD_BROWSER, 10, 90, 205, 240, '');
-    colbr := obj ;
-    fl_set_browser_fontstyle(obj, FL_FIXED_STYLE); 
-    fl_set_object_callback(obj, PFL_CALLBACKPTR(@br_cb), 0);
-
-    obj := fl_add_button(FL_NORMAL_BUTTON, 135, 345, 80, 30, 'Done');
-    fl_set_object_callback(obj, PFL_CALLBACKPTR(@done_cb), 0);
-    obj := fl_add_box(FL_FLAT_BOX, 225, 90, 90, 35, '');
-    rescol := obj; 
-    fl_set_object_color(obj, FL_FREE_COL4, FL_FREE_COL4);
-    fl_set_object_boxtype(obj, FL_BORDER_BOX);
-
-    fl_end_form();
-    {fl_scale_form (cl, 1.1, 1.0);}
-end;
-
-begin
-    fl_initialize(@argc, argv, 'FormDemo', nil, 0);
-    cl:=nil;
-    create_form_cl();
-    dbname:= rgbfile+#0;
-    if (load_browser(dbname)<>0) then
-	fl_set_object_label(dbobj, @dbname[1])
-    else
-	fl_set_object_label(dbobj, 'None');
-
-    fl_set_form_minsize(cl, cl^.w , cl^.h);
-    fl_set_form_maxsize(cl, 2*cl^.w , 2*cl^.h);
-    fl_show_form(cl, FL_PLACE_FREE, FL_TRANSIENT, 'RGB Browser');
-
-    while (fl_do_forms()<>nil) do;
-end.
-  $Log$
-  Revision 1.2  2000-07-13 11:33:14  michael
-  + removed logs
- 
-}

+ 0 - 12
packages/forms/demo/colsel.pp

@@ -1,12 +0,0 @@
-program colsel;
-
-uses forms;
-
-begin
-   fl_initialize(@argc, argv, 'FormDemo', nil, 0);
-   fl_show_colormap(0);
-end.  $Log$
-end.  Revision 1.2  2000-07-13 11:33:14  michael
-end.  + removed logs
-end. 
-}

+ 0 - 52
packages/forms/demo/colsel1.pp

@@ -1,52 +0,0 @@
-program colsel1;
-
-uses forms;
-
-var form : PFL_FORM;
-    topbox : PFL_OBJECT;
-
-procedure change_color(ob : PFL_OBJECT; col : longint);export;
-
-begin
-  fl_set_object_color(topbox, col,  col); 
-end;
-
-procedure  makeform;
-
-var obj : PFL_OBJECT;
-  i,j : Integer;
-  st : string[32];
-
-begin
-  form := fl_bgn_form(FL_UP_BOX,100,100);
-    for i:=0 to 7 do
-      for j:=0 to 7 do 
-        begin
-        str (8*j+i,st);
-        st:=st+#0;
-        obj := fl_add_button(FL_RADIO_BUTTON,11+10*i,15+10*j,8,6,@st[1]);
-        fl_set_object_color(obj,8*j+i,8*j+i);
-        fl_set_object_lalign(obj,FL_ALIGN_BOTTOM);
-        fl_set_object_callback(obj,PFL_CALLBACKPTR(@change_color), (8*j+i));
-        end;
-    topbox := fl_add_button(FL_NORMAL_BUTTON,30,5,40,8,'The Color Map');
-    fl_set_object_lsize(topbox,FL_LARGE_SIZE);
-    fl_set_object_lstyle(topbox,FL_BOLD_STYLE);
-  fl_end_form;
-end;
-
-var ret : PFL_OBJECT;
-
-begin
-  fl_initialize(@argc, argv, 'FormDemo', nil, 0);
-  makeform;
-  fl_scale_form(form, 4.0,4.0);
-  fl_show_form(form,FL_PLACE_FREE,FL_NOBORDER,NiL);
-  while ret<>topbox do ret := fl_do_forms();
-  fl_hide_form(form);
-end.
-  $Log$
-  Revision 1.2  2000-07-13 11:33:14  michael
-  + removed logs
- 
-}

+ 0 - 77
packages/forms/demo/counter.pp

@@ -1,77 +0,0 @@
-{ This is an example of the use of counters.
-}
-program counter;
-
-uses forms;
-
-var
-form : PFL_FORM;
-result : PFL_OBJECT;
-co : array[0..2] of PFL_OBJECT;
-
-procedure color_change(ob : PFL_OBJECT; data : longint);export;
-
-var r,g,b : longint;
-
-begin
-    r :=  round(fl_get_counter_value(co[0]));
-    g :=  round(fl_get_counter_value(co[1]));
-    b :=  round(fl_get_counter_value(co[2]));
-
-    fl_mapcolor(FL_FREE_COL1,r,g,b);
-    fl_redraw_object(result);
-end;
-
-procedure create_form_form;
-var
-  obj : PFL_OBJECT;
-
-begin
-  form := fl_bgn_form(FL_NO_BOX,480,200);
-  obj := fl_add_box(FL_UP_BOX,0,0,480,200,'');
-  obj := fl_add_box(FL_DOWN_BOX,310,20,150,160,'');
-  result := obj ;
-    fl_set_object_dblbuffer(result, 1);
-  obj := fl_add_counter(FL_NORMAL_COUNTER,20,20,270,30,'');
-  co[0] := obj; 
-    fl_set_object_color(obj,FL_INDIANRED,FL_RED);
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@color_change),0);
-  obj:= fl_add_counter(FL_NORMAL_COUNTER,20,60,270,30,'');
-  co[1] := obj;
-    fl_set_object_color(obj,FL_PALEGREEN,FL_GREEN);
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@color_change),0);
-  obj := fl_add_counter(FL_NORMAL_COUNTER,20,100,270,30,'');
-  co[2] := obj ;
-    fl_set_object_color(obj,FL_SLATEBLUE,FL_BLUE);
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@color_change),0);
-  obj := fl_add_button(FL_NORMAL_BUTTON,100,150,110,30,'Exit');
-  fl_end_form();
-end;
-
-var i : longint;
-
-begin
-  fl_initialize(@argc, argv, 'FormDemo', nil, 0);
-  create_form_form();
-  fl_set_object_color(result,FL_FREE_COL1,FL_FREE_COL1);
-
-  for i:=0 to 2 do
-    begin
-    fl_set_counter_bounds(co[i],0.0,255.0);
-    fl_set_counter_step(co[i],1.0,10.0);
-    fl_set_counter_precision(co[i],0);
-    fl_set_counter_return(co[i],1);
-    end;
-
-  fl_call_object_callback(co[0]);
-
-  fl_show_form(form,FL_PLACE_CENTER,FL_NOBORDER,'Counter');
-  fl_do_forms();
-
-end.
-
-  $Log$
-  Revision 1.2  2000-07-13 11:33:14  michael
-  + removed logs
- 
-}

+ 0 - 38
packages/forms/demo/crab.xpm

@@ -1,38 +0,0 @@
-const
-crab45 : array[0..34] of pchar = (
-'28 28 6 2 ',
-'.  c None 	 s s_SkyBlue ',
-'x  c orange 	 s s_orange ',
-'*  c #ff72c2 	 s s_#ff72c2 ',
-'+  c SteelBlue 	 s s_SteelBlue ',
-'G  c black 	 s s_black ',
-'a  c LightGrey 	 s s_LightGrey ',
-'. . . . . . . . . . * * * * * * * . . . . . . . . . . . ',
-'. . . . . . . . * x x x x x x x * . . . . . . . . . . . ',
-'. . . . . . . * * * * * * * x x * . . . . . . . . . . . ',
-'. . . . . . . . . . . . . * x x x * . . . . . . . . . . ',
-'. . . . . . . . . . * x x x x * x x . . . . . . . . . . ',
-'. . . . . . . . + + * * * * * * * x x . . . . . . . . . ',
-'. . . . . . . . . . . . . . . . . * x x . . . . . * . . ',
-'. . * . . . . . . . . . . . . . . . * x . . * * x x . . ',
-'. * * . . + . . . . . . + + x x + * * x * * x x x + . . ',
-'. x * . . + . . . . . . . . + x + * x x x x x + + . . . ',
-'* x * . * * . . . . . . + . + x * * x x x * * . . . . . ',
-'* x * . x * . . . . . + x + + x x x x x x * * . . * * * ',
-'* x * . x * . . + . + x x x x x x x x x x * * * * x x x ',
-'* x * * x * . . + . . + x x x x x x x x x * * x x x G G ',
-'* x x x x * . . x + + + x x x x x x x x x x x * * G G . ',
-'* x x x * * . . x x x x x x x x x x x x x x x * * G G . ',
-'* * * x . * . . + + * x x x x x x x x x x x x * * G G . ',
-'. . . * . x * . * * * x x x x x x x x x x x x x * * * * ',
-'. . . . . x x * * x x x x x x x x x x x x x x * x x x x ',
-'. . . . . . x x x x x x x x x x x x x x x x * * G G G x ',
-'. . . . . . . . * x x x x x x x x x x x x x * * G G + . ',
-'. . . . . . . . * x * * * * x x x x x x x * * * G G . . ',
-'. . . . . . . * x x * * * * x x x x x * * * * * * G G . ',
-'. . . . . . . * x + . . * x * * * x * * * * * G G G G . ',
-'. . . . . . . x x + . . * x * * * * x G G G * G G G . . ',
-'. . . . . . * x + . . * x x G G G * x G G G G G . . . . ',
-'. . . . . . . . . . . * x G G G G * x G + . G G . . . . ',
-'. . . . . . . . . . . * x G . . . * x x . . . . . . . . '
-) ;

+ 0 - 38
packages/forms/demo/crab45.xpm

@@ -1,38 +0,0 @@
-const
-crab45 : array[0..35] of pchar =
-'28 28 6 2 ',
-'.  c None 	 s s_SkyBlue ',
-'x  c orange 	 s s_orange ',
-'*  c #ff72c2 	 s s_#ff72c2 ',
-'+  c SteelBlue 	 s s_SteelBlue ',
-'G  c black 	 s s_black ',
-'a  c LightGrey 	 s s_LightGrey ',
-'. . . . . . . . . . * * * * * * * . . . . . . . . . . . ',
-'. . . . . . . . * x x x x x x x * . . . . . . . . . . . ',
-'. . . . . . . * * * * * * * x x * . . . . . . . . . . . ',
-'. . . . . . . . . . . . . * x x x * . . . . . . . . . . ',
-'. . . . . . . . . . * x x x x * x x . . . . . . . . . . ',
-'. . . . . . . . + + * * * * * * * x x . . . . . . . . . ',
-'. . . . . . . . . . . . . . . . . * x x . . . . . * . . ',
-'. . * . . . . . . . . . . . . . . . * x . . * * x x . . ',
-'. * * . . + . . . . . . + + x x + * * x * * x x x + . . ',
-'. x * . . + . . . . . . . . + x + * x x x x x + + . . . ',
-'* x * . * * . . . . . . + . + x * * x x x * * . . . . . ',
-'* x * . x * . . . . . + x + + x x x x x x * * . . * * * ',
-'* x * . x * . . + . + x x x x x x x x x x * * * * x x x ',
-'* x * * x * . . + . . + x x x x x x x x x * * x x x G G ',
-'* x x x x * . . x + + + x x x x x x x x x x x * * G G . ',
-'* x x x * * . . x x x x x x x x x x x x x x x * * G G . ',
-'* * * x . * . . + + * x x x x x x x x x x x x * * G G . ',
-'. . . * . x * . * * * x x x x x x x x x x x x x * * * * ',
-'. . . . . x x * * x x x x x x x x x x x x x x * x x x x ',
-'. . . . . . x x x x x x x x x x x x x x x x * * G G G x ',
-'. . . . . . . . * x x x x x x x x x x x x x * * G G + . ',
-'. . . . . . . . * x * * * * x x x x x x x * * * G G . . ',
-'. . . . . . . * x x * * * * x x x x x * * * * * * G G . ',
-'. . . . . . . * x + . . * x * * * x * * * * * G G G G . ',
-'. . . . . . . x x + . . * x * * * * x G G G * G G G . . ',
-'. . . . . . * x + . . * x x G G G * x G G G G G . . . . ',
-'. . . . . . . . . . . * x G G G G * x G + . G G . . . . ',
-'. . . . . . . . . . . * x G . . . * x x . . . . . . . . '
-) ;

+ 0 - 95
packages/forms/demo/cursor.pp

@@ -1,95 +0,0 @@
-Program cursor;
-
-{ Cursor routines demo. }
-
-uses forms;
-
-{$i bm1.xbm}
-{$i bm2.xbm}
-
-type 
-TFD_cursor = record
-	cursor : PFL_FORM;
-	vdata : Pointer;
-	ldata : Longint;
-	end;
-PFD_Cursor = ^TFD_Cursor;
-
-var 
-  bitmapcur : Longint;
-
-
-function create_form_cursor : PFD_cursor; Forward;
-
-{ callbacks for form cursor }
-procedure setcursor_cb(ob : PFL_Object; data : Longint);
-begin
-   fl_set_cursor(FL_ObjWin(ob), data);
-end;
-
-procedure setbitmapcursor_cb(ob : PFL_OBJECT ; data : Longint);export;
-
-begin
-  if bitmapcur<>0 then
-     bitmapcur := longint(fl_create_bitmap_cursor(Pchar(@bm1_bits), Pchar(@bm2_bits), 
-                  16, 16, 8 ,8 ));
-                  {bm1_width, bm1_height,  bm1_width/2, bm1_height/2);}
-  fl_set_cursor(FL_ObjWin(ob), bitmapcur);
-end;
-
-
-Procedure done_cb (ob : PFL_OBJECT; data : Longint);export;
-begin
-    Halt(0);
-end;
-
-
-Function create_form_cursor : PFD_cursor;
-
-var 
-  obj : PFL_OBJECT;
-  fdui : PFD_cursor;
-
-begin
-  new(fdui);
-
-  fdui^.cursor := fl_bgn_form(FL_NO_BOX, 325, 175);
-  obj := fl_add_box(FL_UP_BOX,0,0,325,175,'');
-  obj := fl_add_frame(FL_EMBOSSED_FRAME,10,10,305,120,'');
-  obj := fl_add_button(FL_NORMAL_BUTTON,20,20,65,30,'Hand');
-    fl_set_object_callback(obj,PFL_CALLBACkPTR(@setcursor_cb),XC_hand2);
-  obj := fl_add_button(FL_NORMAL_BUTTON,250,140,60,25,'Done');
-    fl_set_object_callback(obj,PFL_CALLBACkPTR(@done_cb),0);
-  obj := fl_add_button(FL_NORMAL_BUTTON,95,20,65,30,'Watch');
-    fl_set_object_callback(obj,PFL_CALLBACkPTR(@setcursor_cb),XC_watch);
-  obj := fl_add_button(FL_NORMAL_BUTTON,170,20,65,30,'Invisible');
-    fl_set_object_callback(obj,PFL_CALLBACkPTR(@setcursor_cb),FL_INVISIBLE_CURSOR);
-  obj := fl_add_button(FL_NORMAL_BUTTON,90,70,140,50,'DefaultCursor');
-    fl_set_button_shortcut(obj,'Dd#d',1);
-    fl_set_object_callback(obj,PFL_CALLBACkPTR(@setcursor_cb),FL_DEFAULT_CURSOR);
-  obj := fl_add_button(FL_NORMAL_BUTTON,245,20,65,30,'BitmapCur');
-    fl_set_object_callback(obj,PFL_CALLBACkPTR(@setbitmapcursor_cb),0);
-  fl_end_form;
-
-  create_form_cursor:= fdui;
-end;
-
-var fd_cursor : PFD_cursor ;
-
-Begin
-
-   fl_set_border_width(-2);
-   fl_initialize(@argc, argv, 'FormDemo', nil, 0);
-   fd_cursor := create_form_cursor;
-
-   { fill-in form initialization code }
-
-   fl_show_form(fd_cursor^.cursor,FL_PLACE_CENTER,FL_FULLBORDER,'cursor');
-   fl_do_forms;
-end.
-
-  $Log$
-  Revision 1.2  2000-07-13 11:33:14  michael
-  + removed logs
- 
-}

+ 0 - 11
packages/forms/demo/doc2p

@@ -1,11 +0,0 @@
-#!/bin/csh
-# Simple script to do some VERY basic c->pascal conversions.
-# 
-foreach f ( $1 )
-sed s/\\\"/\\\'/g <$f | sed s/\\\/\\\*/\{/g |sed s/\\\*\\\//\}/g |\
-sed s/\ =\ /\ :=\ /g | sed s/-\>/\\^\\\./g >`basename $f .c`.pp
-
-
-
-
-

+ 0 - 89
packages/forms/demo/fbrowse.pp

@@ -1,89 +0,0 @@
-{ This demo shows the use of a browser and a file selector.
-}
-program fbrowse;
-
-uses forms,strings;
-
-var 
-form : PFL_FORM;
-br : PFL_OBJECT;
-
-procedure load_file(ob : PFL_OBJECT; arg : longint);export;
-var
-  fname : pchar;
-
-begin
-  fname := fl_show_fselector ('File To Load','','*.*','');
-  if (fname = nil) then exit;
-  if (fl_load_browser(br,fname)<>0) then
-     fl_add_browser_line(br,'NO SUCH FILE!');
-end;
- 
-procedure set_size(ob : PFL_OBJECT; arg : longint);export;
-begin
-   fl_set_browser_fontsize(br,arg);
-end;
-
-procedure exit_program(ob : PFL_OBJECT; data : longint);export;
-begin
-   halt(0);
-end;
-
-procedure create_form;
-var 
-  obj : PFL_OBJECT;
-  x,dx : TFL_Coord;
-
-begin
-  x  := 20; 
-  dx := 85;
-
-  form := fl_bgn_form(FL_NO_BOX,590,610);
-  obj := fl_add_box(FL_UP_BOX,0,0,590,610,'');
-  obj := fl_add_browser(FL_NORMAL_BROWSER,20,20,550,530,'');
-  br := obj ;
-  obj := fl_add_button(FL_NORMAL_BUTTON,x,560,dx,30,'Load');
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@load_file),0);
-    x :=x+ dx + 10;
-  obj := fl_add_lightbutton(FL_RADIO_BUTTON,x,560,dx,30,'Tiny');
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@set_size),FL_TINY_SIZE);
-    x := x+dx;
-  obj := fl_add_lightbutton(FL_RADIO_BUTTON,x ,560,dx,30,'Small');
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@set_size),FL_SMALL_SIZE);
-{ Compiler crashes on the next one. Probably the comparing of the 
-  constants..
-    if (longint(FL_SMALL_SIZE)=longint(FL_BROWSER_FONTSIZE)) then
-    fl_set_button(obj, 1);
-}    x := x+dx;
-  obj := fl_add_lightbutton(FL_RADIO_BUTTON,x ,560,dx,30,'Normal');
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@set_size),FL_NORMAL_SIZE);
-{ idem here.
-   if FL_NORMAL_SIZE = FL_BROWSER_FONTSIZE then
-    fl_set_button(obj,1 );
-}    x := x+dx;
-  obj := fl_add_lightbutton(FL_RADIO_BUTTON,x ,560,dx,30,'Large');
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@set_size),FL_LARGE_SIZE);
-
-  obj := fl_add_button(FL_NORMAL_BUTTON,470,560,100,30,'Exit');
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@exit_program), 0);
-  fl_end_form();
-end;
-
-begin
-  fl_initialize(@argc, argv, 'FormDemo', nil, 0);
-  create_form();
-
-  fl_clear_browser(br);
-  fl_add_browser_line(br,'LOAD A FILE.');
-  fl_set_browser_fontstyle(br,FL_FIXED_STYLE);
-
-  fl_show_form(form,FL_PLACE_FREE,FL_FULLBORDER,'Browser');
-  fl_do_forms();
-  fl_hide_form(form);
-  fl_free_form(form);
-end.
-  $Log$
-  Revision 1.2  2000-07-13 11:33:14  michael
-  + removed logs
- 
-}

+ 0 - 59
packages/forms/demo/fbrowse1.pp

@@ -1,59 +0,0 @@
-{ This demo shows the use of a browser and fl_call_object_callback.  }
-program fbrowse1;
-
-uses forms;
-
-var
-  form : PFL_FORM;
-  br, but : PFL_OBJECT;
-
-procedure load_file(ob : PFL_OBJECT; arg : longint);export;
-
-begin
-  if (fl_load_browser(br,fl_show_input('Filename to load',''))<>0) then
-     fl_add_browser_line(br,'NO SUCH FILE!');
-end;
- 
-procedure set_size(ob : PFL_OBJECT; arg : Longint);export;
-
-begin
-  fl_set_browser_fontsize(br, arg);
-end;
-
-
-var obj : PFL_OBJECT;
-
-begin
-    fl_initialize(@argc, argv, 'FormDemo', nil, 0);
-
-    form := fl_bgn_form(FL_UP_BOX,130,100);
-     br := fl_add_browser(FL_NORMAL_BROWSER,5,5,95,90,'');
-     but := fl_add_button(FL_NORMAL_BUTTON,105,5,20,8,'Exit');
-     obj := fl_add_button(FL_NORMAL_BUTTON,105,75,20,8,'Load');
-     fl_set_object_callback(obj,PFL_CALLBACKPTR(@load_file),0);
-     obj := fl_add_lightbutton(FL_RADIO_BUTTON,105,60,20,8,'Small');
-     fl_set_object_callback(obj,PFL_CALLBACKPTR(@set_size),FL_SMALL_SIZE);
-     fl_call_object_callback(obj);
-     fl_set_button(obj,1);
-     obj := fl_add_lightbutton(FL_RADIO_BUTTON,105,50,20,8,'Normal');
-     fl_set_object_callback(obj,PFL_CALLBACKPTR(@set_size),FL_NORMAL_SIZE);
-     obj := fl_add_lightbutton(FL_RADIO_BUTTON,105,40,20,8,'Large');
-     fl_set_object_callback(obj,PFL_CALLBACKPTR(@set_size),FL_LARGE_SIZE);
-    fl_end_form();
-
-  fl_clear_browser(br);
-  fl_add_browser_line(br,'LOAD A FILE.');
-  fl_scale_form(form, 4.0, 4.0); 
-
-  fl_show_form(form,FL_PLACE_FREE,FL_FULLBORDER,'Browser');
-
-  repeat 
-    obj := fl_do_forms; 
-  until obj = but;
-  fl_hide_form(form);
-end.
-  $Log$
-  Revision 1.2  2000-07-13 11:33:14  michael
-  + removed logs
- 
-}

+ 0 - 77
packages/forms/demo/fdial.pp

@@ -1,77 +0,0 @@
-{ This is an example of the use of filled dials, dial range
-  and dial direction.
- }
-Program fdial;
-
-uses forms;
-
-var
-form: PFL_FORM;
-button, red, green, blue, redtext, greentext, bluetext, theresult : PFL_OBJECT;
-
-Procedure  makeform;
-
-begin
-  form := fl_bgn_form(FL_UP_BOX,300,330);
-    button := fl_add_button(FL_NORMAL_BUTTON,45,15,210,45,'A Color Editor');
-    fl_set_object_lsize(button,FL_LARGE_SIZE);
-
-    red := fl_add_dial(FL_FILL_DIAL,30,240,60,60,'Red');
-    fl_set_dial_bounds(red,0.0,255.0);
-    fl_set_dial_value(red,128.0);
-    fl_set_object_color(red,FL_DIAL_COL1, FL_RED);
-    redtext := fl_add_box(FL_DOWN_BOX,105,255,50,25,'');
-
-    green := fl_add_dial(FL_FILL_DIAL,30,155,60,60,'Green');
-    fl_set_dial_bounds(green,0.0,255.0);
-    fl_set_dial_value(green,128.0);
-    fl_set_dial_angles(green, 45.0, (360-45.0)); 
-    fl_set_object_color(green,FL_DIAL_COL1, FL_GREEN);
-    greentext := fl_add_box(FL_DOWN_BOX,105,170,50,25,'');
-
-    blue := fl_add_dial(FL_FILL_DIAL,30,70,60,60,'Blue');
-    fl_set_dial_bounds(blue,0.0,255.0);
-    fl_set_dial_value(blue,128.0);
-    fl_set_object_color(blue,FL_DIAL_COL1,FL_BLUE);
-    fl_set_dial_direction(blue, FL_DIAL_CCW);
-    bluetext := fl_add_box(FL_DOWN_BOX,105,90,50,25,'');
-
-    theresult := fl_add_box(FL_DOWN_BOX,180,70,90,245,'');
-    fl_set_object_color(theresult,FL_FREE_COL1,FL_FREE_COL1);
-    fl_set_object_dblbuffer(theresult,1);
-  fl_end_form;
-end;
-
-var 
-  ret : PFL_OBJECT;
-  r,g,b : longint;
-  st : string;
-
-begin
-  fl_initialize(@argc, argv, 'FormDemo', nil, 0);
-  makeform;
-  fl_show_form(form,FL_PLACE_MOUSE,FL_TRANSIENT,'A Form');
-  repeat
-    r :=  round(fl_get_dial_value(red)+0.001);
-    g :=  round(fl_get_dial_value(green)+0.001);
-    b :=  round(fl_get_dial_value(blue)+0.001);
-    fl_mapcolor(FL_FREE_COL1,r,g,b);
-    fl_redraw_object(theresult);
-    str (r,st); 
-    st:=st+#0; 
-    fl_set_object_label(redtext,@st[1]);
-    str (g,st); 
-    st:=st+#0; 
-    fl_set_object_label(greentext,@st[1]);
-    str (b,st); 
-    st:=st+#0; 
-    fl_set_object_label(bluetext,@st[1]);
-    ret := fl_do_forms;
-  until (ret = button);
-  fl_hide_form(form);
-end.
-  $Log$
-  Revision 1.2  2000-07-13 11:33:14  michael
-  + removed logs
- 
-}

+ 0 - 52
packages/forms/demo/flclock.pp

@@ -1,52 +0,0 @@
-{ Form definition file generated with fdesign. }
-program flclock;
-
-uses forms;
-
-var
- fclock : PFL_FORM;
-
-procedure exit_cb (ob : PFL_OBJECT; q : longint);export;
-begin
-   halt(0);
-end;
-
-procedure create_form_clock;
-var
-  obj : PFL_OBJECT;
-
-begin
-  if (fclock<>nil) then exit;
-
-  fclock := fl_bgn_form(FL_NO_BOX,500,350);
-  obj := fl_add_box(FL_UP_BOX,0,0,500,350,'');
-
-  obj := fl_add_clock(FL_DIGITAL_CLOCK,190,20,140,30,'');
-  fl_set_object_boxtype(obj,FL_ROUNDED_BOX);
-  fl_set_object_color(obj,FL_COL1,FL_BLACK);
-  fl_set_object_lsize(obj,FL_MEDIUM_SIZE);
-  fl_set_object_lstyle(obj,FL_BOLD_STYLE);
-
-  obj := fl_add_clock(FL_ANALOG_CLOCK,30,70,220,200,'');
-  fl_set_object_boxtype(obj,FL_UP_BOX);
-
-  obj := fl_add_clock(FL_ANALOG_CLOCK,260,70,220,200,'');
-  fl_set_object_boxtype(obj,FL_OVAL_BOX);
-  obj := fl_add_button(FL_NORMAL_BUTTON,380,300,100,30,'Exit');
-  fl_set_object_callback(obj, PFL_CALLBACKPTR(@exit_cb), 0);
-  fl_end_form;
-end;
-
-begin
-    fl_initialize(@argc, argv, 'FormDemo', nil, 0);
-
-    create_form_clock();
-    fl_set_form_dblbuffer(fclock, 1);
-    fl_show_form(fclock, FL_PLACE_CENTER,FL_TRANSIENT,'clocks');
-    fl_do_forms();
-end.
-  $Log$
-  Revision 1.2  2000-07-13 11:33:14  michael
-  + removed logs
- 
-}

+ 0 - 112
packages/forms/demo/fonts.pp

@@ -1,112 +0,0 @@
-{* Demo, showing ther different fonts in the different sizes. *}
-program fonts;
-
-uses forms;
-
-type
-TFD_fontsform = record
-	fontsform : PFL_FORM;
-	fontobj,
-	sizeobj,
-	textobj : PFL_OBJECT;
-	vdata : pointer;
-	ldata : longint;
-end;
-PFD_fontsform=^TFD_fontsform;
-
-var ui : PFD_fontsform;
-
-procedure done_cb(obj : PFL_OBJECT; arg : longint);export;
-begin
-    halt(0);
-end;
-
-procedure style_cb(obj : PFL_OBJECT; arg : Longint);export;
-begin
-  fl_set_object_lstyle(ui^.textobj, fl_get_browser(obj) - 1);
-end;
-
-procedure size_cb(obj : PFL_OBJECT; arg : longint); export;
-begin
-  case fl_get_browser(obj) of
-     1: fl_set_object_lsize(ui^.textobj,8); 
-     2: fl_set_object_lsize(ui^.textobj,10); 
-     3: fl_set_object_lsize(ui^.textobj,11); 
-     4: fl_set_object_lsize(ui^.textobj,12); 
-     5: fl_set_object_lsize(ui^.textobj,13); 
-     6: fl_set_object_lsize(ui^.textobj,14); 
-     7: fl_set_object_lsize(ui^.textobj,18); 
-     8: fl_set_object_lsize(ui^.textobj,24); 
-     9: fl_set_object_lsize(ui^.textobj,30); 
-  end;
-end;
-
-procedure addit(st : pchar);
-begin
-   fl_add_browser_line(ui^.fontobj,st); 
-end;
-
-
-function create_form_fontsform : PFD_fontsform;
-var
-  obj : PFL_OBJECT ;
-  fdui : PFD_fontsform;
-
-begin
-  new(fdui);
-
-  fdui^.fontsform := fl_bgn_form(FL_NO_BOX, 371, 296);
-  obj := fl_add_box(FL_FLAT_BOX,0,0,371,296,'');
-    fl_set_object_color(obj,FL_SLATEBLUE,FL_COL1);
-  obj := fl_add_browser(FL_HOLD_BROWSER,10,145,195,135,'');
-  fdui^.fontobj := obj;
-    fl_set_object_lalign(obj,FL_ALIGN_BOTTOM or FL_ALIGN_INSIDE);
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@style_cb),0);
-  obj := fl_add_browser(FL_HOLD_BROWSER,215,145,145,135,'');
-  fdui^.sizeobj := obj ;
-    fl_set_object_lalign(obj,FL_ALIGN_BOTTOM or FL_ALIGN_INSIDE);
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@size_cb),0);
-  obj:= fl_add_text(FL_NORMAL_TEXT,10,5,351,125,'The quick brown'#10'fox jumps over'#10'the lazy dog.');
-  fdui^.textobj := obj ;
-    fl_set_object_boxtype(obj, FL_FRAME_BOX);
-    fl_set_object_lalign(obj, FL_ALIGN_CENTER);
-  obj := fl_add_button(FL_HIDDEN_BUTTON,0,0,370,140,'Button');
-    fl_set_button_shortcut(obj,'^[qQ',1);
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@done_cb),0);
-  fl_end_form();
-
-  create_form_fontsform:= fdui;
-end;
-
-begin
-  fl_set_border_width(-3);
-
-  fl_initialize(@argc, argv, 'FormDemo', nil, 0);
-  ui := create_form_fontsform();
-  fl_scale_form(ui^.fontsform, 1.1,1.2);
-  fl_set_object_dblbuffer(ui^.textobj,1);
-  fl_set_object_bw(ui^.textobj,5);
-
-  fl_enumerate_fonts(PFL_ENUMERATEPTR(@addit), 1);
-  fl_select_browser_line(ui^.fontobj,1);
-  fl_addto_browser(ui^.sizeobj,'8  (tiny)');
-  fl_addto_browser(ui^.sizeobj,'10 (small)');
-  fl_addto_browser(ui^.sizeobj,'11 (scaled)');
-  fl_addto_browser(ui^.sizeobj,'12 (normal)');
-  fl_addto_browser(ui^.sizeobj,'13 (scaled)');
-  fl_addto_browser(ui^.sizeobj,'14 (medium)');
-  fl_addto_browser(ui^.sizeobj,'18 (large)');
-  fl_addto_browser(ui^.sizeobj,'24 (Huge)');
-  fl_addto_browser(ui^.sizeobj,'30 (scaled)');
-  fl_select_browser_line(ui^.sizeobj,2);
-  fl_set_object_lstyle(ui^.textobj,FL_NORMAL_STYLE);
-  fl_call_object_callback(ui^.fontobj);
-  fl_call_object_callback(ui^.sizeobj);
-  fl_show_form(ui^.fontsform,FL_PLACE_CENTER,FL_TRANSIENT,'Fonts');
-  fl_do_forms();
-end.
-  $Log$
-  Revision 1.2  2000-07-13 11:33:14  michael
-  + removed logs
- 
-}

+ 0 - 89
packages/forms/demo/free1.pp

@@ -1,89 +0,0 @@
-{ This demo is meant to demonstrate the use of a free
-   object in a form.
-}
-program free1;
-
-uses forms;
-
-Const
-  onn : boolean = True;
-  dcol : longint = 1;
-  
-var
-  cole : TFL_COLOR;
-  form : PFL_FORM;
-  obj : PFL_OBJECT;
-  i, j, depth, col : Longint;
-  dummy : cardinal;
-
-
-{ The call back routine }
-function handle_it(obj : PFL_OBJECT; event : longint; 
-                   mx,my : TFL_Coord; 
-                   key : longint; ev : pointer) : longint;export;
-
-begin
-  exit;
-  case event of
-    FL_DRAW:
-        fl_rect(obj^.x,obj^.y,obj^.w,obj^.h, obj^.u_ldata);
-    FL_RELEASE:
-	onn := not(onn);
-    FL_STEP:
- 	if (onn) then 
-	  begin
-	  if (obj^.u_ldata = cole) then
-	      dcol := -1;
-	  if (obj^.u_ldata = FL_FREE_COL1) then
-	      dcol := 1;
-          obj^.u_ldata := dcol;
-          fl_redraw_object(obj);
-	  end;
-  end;
-  handle_it:=0;
-end;
-
-procedure done(ob : PFL_OBJECT; data : longint); export;
-
-begin
- halt(0)
-end;
-
-begin
-  fl_initialize(@argc, argv, 'FormDemo', nil, 0);
-  form := fl_bgn_form(FL_UP_BOX,400,400);
-  obj := fl_add_button(FL_NORMAL_BUTTON,320,20,40,30,'Exit');
-  fl_set_object_callback(obj, PFL_CALLBACKPTR(@done), 0);
-  obj := fl_add_free(FL_CONTINUOUS_FREE,40,80,320,280
-                     ,'',PFL_HANDLEPTR(@handle_it));
-  fl_end_form();
-  depth  := fl_get_visual_depth;
-  { can't do it if less than 4 bit deep }
-  if depth=8 then writeln ('depth of 8');
-  if (depth < 4) then
-    begin
-    writeln ('This Demo requires a depth of at least 4 bits');
-    halt(1);
-  end;
-  cole := ((1 shl depth)-1);
-  if (cole > 64) then
-     cole := 64;
-  col := FL_FREE_COL1;
-{  obj^.u_ldata := col;
-}  cole := cole+col;
-  i:=col;
-  while i<=cole do
-   begin
-     j := round(255 * (i - col) /(cole  - col));
-     dummy:=fl_mapcolor(i, j, j, j);
-     inc(i);
-   end; 
-
-  fl_show_form(form,FL_PLACE_CENTER,FL_NOBORDER,'Free Object');
-  fl_do_forms();
-end.
-  $Log$
-  Revision 1.2  2000-07-13 11:33:14  michael
-  + removed logs
- 
-}

+ 0 - 54
packages/forms/demo/goodies.pp

@@ -1,54 +0,0 @@
-Program goodies;
-
-{ This demo program uses the routines in the
-   goodies section, that help you create easy
-   forms in an even easier way.
-}
-
-uses forms,strings;
-
-var
-  choice : Longint;
-  str1,str2 : string[100];
-  s : pchar;
-  
-begin
-  fl_initialize(@argc, argv, 'FormDemo', nil, 0);
-
-  fl_set_resource(FLOKLabel,'Go');
-
-  if (fl_show_question('Do you want bold font ?',1)<>0) then
-     fl_set_goodies_font(FL_BOLD_STYLE,FL_NORMAL_SIZE);
-
-  fl_show_messages('This is a test program for the goodies of the forms library');
-
-  fl_show_alert('Alert', 'Alert form can be used to inform', 
-               'recoverable errors', 0);
-
-  if (fl_show_question('Do you want to quit?', 0)<>0) then
-      halt(0);
-
-  s:=fl_show_input('Give a string:','');
-  if s<>nil then strcopy(@str1[1],s);
-  fl_show_message('You typed:','',@str1[1]);
-  choice := fl_show_choices('Pick a choice',3,'One','Two','Three',2);
-  case choice of
-    1: fl_show_message('You typed: One','',''); 
-    2: fl_show_message('You typed: Two','',''); 
-    3: fl_show_message('You typed: Three','','');
-  else
-    begin 
-    fl_show_message('An error occured!','','');
-    end
-  end;
-  str1:='<Cancel>'#0;
-  s:=fl_show_input('Give another string:',@str1[1]);
-  if s<>nil then s:=@str1[1];
-  fl_show_message('You typed:','',s);
-  fl_show_messages('Good Bye');
-end.
-  $Log$
-  Revision 1.2  2000-07-13 11:33:14  michael
-  + removed logs
- 
-}

+ 0 - 231
packages/forms/demo/group.pp

@@ -1,231 +0,0 @@
-program group;
-
-uses forms;
-
-{$i porsche.xpm}
-{$i nomail.xbm}
-{$i bm1.xbm}
-
-Const NGROUP = 4;
-
-type TFD_objsform = record
-	objsform : PFL_Form;
-	vdata : Pointer;
-	ldata : longint;
-	bitbutton,
-	pixbutton,
-	bit,
-	pix,
-	chart,
-	quit,
-	menu,
-	choice,
-	browser,
-	xyplot : PFL_Object;
-	button,group :  array [0..4] of PFL_OBJECT;
-end;
-PFD_objsform = ^TFD_objsform;
-
-var fd_objsform : PFD_objsform;
-
-{ callbacks for form objsform }
-procedure show_group(ob : PFL_OBJECT;data:  longint);export;
-
-var  i : longint;
-
-begin
-  for i := 0 to NGROUP do
-    if i=data then
-      fl_show_object(fd_objsform^.group[i])
-    else
-      fl_hide_object(fd_objsform^.group[i]);
-end;
-
-procedure init_gui(fd : PFD_objsform);
-
-const
-    x : array[0..5] of real = ( 0.0, 1.0, 2.0, 3.0, 4.0, 5.0 );
-    y : array[0..5] of real = ( 5.5, 4.0, 4.5, 3.8, 4.0, 5.0 );
-    labels: array[0..5] of pchar = ('Mon','Tue','Wed', 'Thur','Fri','Sat');
-
-var
-    i : integer;
-
-begin
-    fl_addto_menu(fd^.menu,'One'#8'F1|Two'#8'F2|Three'#8'F3|Four'#8'F4');
-    fl_addto_choice(fd^.choice,'Option1|Option2|Option3');
-
-    fl_set_pixmapbutton_data(fd^.pixbutton,porsche);
-    fl_set_pixmap_data(fd^.pix, porsche);
-    fl_set_bitmapbutton_data(fd^.bitbutton, bm1_width, bm1_height,pchar(@bm1_bits));
-    fl_set_bitmap_data(fd^.bit, nomail_width, nomail_height, pchar(@nomail_bits));
-
-    fl_set_browser_fontsize(fd^.browser,FL_NORMAL_SIZE);
-    fl_addto_browser(fd^.browser,'browser line 1'#10'browser line 2');
-    fl_addto_browser(fd^.browser,'browser line 3'#10'browser line 4');
-    fl_addto_browser(fd^.browser,'browser line 5'#10'browser line 6');
-    fl_addto_browser(fd^.browser,'browser line 7'#10'browser line 8');
-    fl_addto_browser(fd^.browser,'browser line 9'#10'browser line 10');
-    fl_addto_browser(fd^.browser,'browser line 11'#10'browser line 12');
-    fl_addto_browser(fd^.browser,'browser line 13'#10'browser line 14');
-    fl_addto_browser(fd^.browser,'browser line 15'#10'browser line 16');
-    fl_addto_browser(fd^.browser,'browser line 17'#10'browser line 18');
-
-    for i := 0 to 6 do
-      fl_add_chart_value(fd^.chart,y[i],labels[i],i+1);
-
-    fl_set_xyplot_data(fd^.xyplot,x,y,6,'','','');
-    fl_add_xyplot_overlay(fd^.xyplot,1, x, y, 6, FL_RED);
-    fl_add_xyplot_text(fd^.xyplot,2.5,5.2,'Weekly Summary', 
-                       FL_ALIGN_CENTER,FL_BLUE);
-    fl_add_xyplot_text(fd^.xyplot, 3, 3.85, '@-22^.', FL_ALIGN_TOP, FL_RED);
-
-    fl_set_xyplot_overlay_type(fd^.xyplot,1,FL_NORMAL_XYPLOT);
-    fl_set_xyplot_alphaxtics(fd^.xyplot,'Mon|Tue|Wed|Thu|Fri|Sat', nil);
-    fl_set_xyplot_ytics(fd^.xyplot,-1,-1);
-    fl_set_xyplot_linewidth(fd^.xyplot,0, 3);
-end;
-
-function create_form_objsform : PFD_objsform;
-var
-  obj : PFL_OBJECT;
-  fdui : PFD_objsform;
-  old_bw : Longint;
-  
-begin
-  new(fdui);
-  old_bw := fl_get_border_width;
-
-  fl_set_border_width(-3);
-  fdui^.objsform := fl_bgn_form(FL_NO_BOX, 456, 361);
-  obj := fl_add_box(FL_FLAT_BOX,0,0,456,361,'');
-  obj := fl_add_box(FL_UP_BOX,0,0,455,360,'');
-  obj := fl_add_box(FL_UP_BOX,0,0,456,70,'');
-  obj := fl_add_button(FL_RADIO_BUTTON,15,20,75,30,'Static');
-    fdui^.button[0] := obj; 
-    fl_set_object_lsize(obj,FL_NORMAL_SIZE);
-    fl_set_object_lstyle(obj,FL_TIMESBOLD_STYLE);
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@show_group),0);
-  obj := fl_add_button(FL_RADIO_BUTTON,90,20,75,30,'Button');
-    fdui^.button[1] := obj; 
-    fl_set_object_lsize(obj,FL_NORMAL_SIZE);
-    fl_set_object_lstyle(obj,FL_TIMESBOLD_STYLE);
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@show_group),1);
-  obj := fl_add_button(FL_RADIO_BUTTON,165,20,70,30,'Valuator');
-    fdui^.button[2] := obj; 
-    fl_set_object_lsize(obj,FL_NORMAL_SIZE);
-    fl_set_object_lstyle(obj,FL_TIMESBOLD_STYLE);
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@show_group),2);
-  obj := fl_add_button(FL_RADIO_BUTTON,235,20,70,30,'Input');
-    fdui^.button[3] := obj; 
-    fl_set_object_lsize(obj,FL_NORMAL_SIZE);
-    fl_set_object_lstyle(obj,FL_TIMESBOLD_STYLE);
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@show_group),3);
-  obj := fl_add_button(FL_RADIO_BUTTON,305,20,70,30,'Other');
-    fdui^.button[4] := obj; 
-    fl_set_object_lsize(obj,FL_NORMAL_SIZE);
-    fl_set_object_lstyle(obj,FL_TIMESBOLD_STYLE);
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@show_group),4);
-  obj := fl_add_box(FL_UP_BOX,0,70,456,291,'');
-  obj := fl_add_box(FL_DOWN_BOX,9,90,435,260,'');
-
-  fdui^.group[2] := fl_bgn_group();
-  obj := fl_add_text(FL_NORMAL_TEXT,260,140,80,30,'Text');
-    fl_set_object_lalign(obj,FL_ALIGN_LEFT or FL_ALIGN_INSIDE);
-  obj := fl_add_slider(FL_HOR_BROWSER_SLIDER,60,120,170,25,'');
-  obj := fl_add_slider(FL_HOR_FILL_SLIDER,60,160,170,30,'');
-    fl_set_slider_value(obj, 0.54);
-  obj := fl_add_slider(FL_VERT_SLIDER,390,110,30,170,'');
-    fl_set_slider_value(obj, 0.48);
-  obj := fl_add_valslider(FL_VERT_SLIDER,350,110,30,170,'');
-  obj := fl_add_dial(FL_FILL_DIAL,50,220,90,70,'');
-    fl_set_object_color(obj,FL_COL1,FL_BLUE);
-  obj := fl_add_positioner(FL_NORMAL_POSITIONER,150,210,120,100,'');
-  obj := fl_add_counter(FL_NORMAL_COUNTER,300,300,130,30,'');
-  fl_end_group();
-
-
-  fdui^.group[1] := fl_bgn_group();
-  obj := fl_add_bitmapbutton(FL_NORMAL_BUTTON,60,250,50,40,'');
-    fdui^.bitbutton := obj; 
-  obj := fl_add_pixmapbutton(FL_NORMAL_BUTTON,85,120,80,80,'');
-    fdui^.pixbutton := obj; 
-  obj := fl_add_button(FL_NORMAL_BUTTON,290,270,90,35,'Button');
-  obj := fl_add_round3dbutton(FL_PUSH_BUTTON,260,95,60,40,'Round3DButton');
-    fl_set_object_color(obj, FL_COL1, FL_MAGENTA);
-  obj := fl_add_roundbutton(FL_PUSH_BUTTON,220,140,60,40,'RoundButton');
-  obj := fl_add_checkbutton(FL_PUSH_BUTTON,190,230,50,40,'CheckButton');
-    fl_set_object_color(obj,FL_COL1,FL_BLUE);
-  obj := fl_add_lightbutton(FL_PUSH_BUTTON,290,200,100,30,'LightButton');
-  obj := fl_add_button(FL_PUSH_BUTTON, 120, 290, 100, 35 ,'Button');
-   fl_set_object_boxtype(obj, FL_ROUNDED3D_UPBOX);
-  fl_end_group();
-
-
-  fdui^.group[0] := fl_bgn_group();
-  obj := fl_add_box(FL_UP_BOX,40,120,70,70,'A Box');
-    fl_set_object_lsize(obj,FL_NORMAL_SIZE);
-    fl_set_object_lstyle(obj,FL_TIMESBOLD_STYLE);
-  obj := fl_add_bitmap(FL_NORMAL_BITMAP,30,220,80,70,'bitmap');
-    fdui^.bit := obj; 
-  obj := fl_add_clock(FL_ANALOG_CLOCK,330,240,90,80,'');
-  obj := fl_add_frame(FL_ENGRAVED_FRAME,130,120,80,70,'A Frame');
-    fl_set_object_lsize(obj,FL_NORMAL_SIZE);
-    fl_set_object_lstyle(obj,FL_TIMESBOLD_STYLE);
-  obj := fl_add_pixmap(FL_NORMAL_PIXMAP,340,110,90,70,'pixmap');
-    fdui^.pix := obj; 
-  obj := fl_add_chart(FL_PIE_CHART,160,210,130,110,'chart');
-    fdui^.chart := obj; 
-  obj := fl_add_text(FL_NORMAL_TEXT,240,130,100,30,'Text stuff\nand more stuff');
-    fl_set_object_lalign(obj,FL_ALIGN_CENTER or FL_ALIGN_INSIDE);
-  fl_end_group();
-
-
-  fdui^.group[3] := fl_bgn_group();
-  obj := fl_add_input(FL_NORMAL_INPUT,140,120,150,30,'Input');
-  obj := fl_add_input(FL_MULTILINE_INPUT,60,170,320,130,'');
-  fl_end_group();
-
-  obj := fl_add_button(FL_NORMAL_BUTTON,385,20,60,30,'Quit');
-    fdui^.quit := obj; 
-
-  fdui^.group[4] := fl_bgn_group();
-  obj := fl_add_menu(FL_PULLDOWN_MENU,190,110,40,19,'Menu');
-    fdui^.menu := obj; 
-    fl_set_object_boxtype(obj,FL_FLAT_BOX);
-  obj := fl_add_choice(FL_NORMAL_CHOICE,290,110,120,30,'');
-    fdui^.choice := obj; 
-  obj := fl_add_browser(FL_NORMAL_BROWSER,30,140,140,150,'');
-    fdui^.browser := obj; 
-  obj := fl_add_xyplot(FL_IMPULSE_XYPLOT,190,150,240,180,'');
-    fdui^.xyplot := obj; 
-    fl_set_object_lsize(obj,FL_DEFAULT_SIZE);
-  fl_end_group();
-
-  fl_end_form();
-  fdui^.objsform^.fdui:=fdui;
-  fl_set_border_width(old_bw);
-
-  create_form_objsform := fdui;
-end;
-
-begin
-   fl_initialize(@argc, argv, '', nil, 0);
-   fd_objsform := create_form_objsform;
-   init_gui(fd_objsform);
-
-   { fill-in form initialization code }
-   fl_set_button(fd_objsform^.button[0], 1);
-   show_group(nil, 0); 
-
-   { show the first form }
-   fl_show_form(fd_objsform^.objsform,FL_PLACE_CENTER,FL_FULLBORDER,'objsform');
-   while (fl_do_forms() <> fd_objsform^.quit) do 
-     begin
-     end;
-end.
-  $Log$
-  Revision 1.2  2000-07-13 11:33:14  michael
-  + removed logs
- 
-}

+ 0 - 42
packages/forms/demo/iconify.pp

@@ -1,42 +0,0 @@
-Program iconify;
-
-Uses x,forms;
-
-{$i crab.xpm}
-
-
-function create_form_form : PFL_FORM;
-
-var 
-  obj : PFL_OBJECT;
-  form : PFL_FORM;
-  
-begin
-  new(form);
-  form := fl_bgn_form(FL_NO_BOX,151,111);
-  obj := fl_add_pixmapbutton(FL_NORMAL_BUTTON,0,0,151,111,
-                             'Iconify Me\nvia Window Manager');
-  fl_set_object_lalign(obj, FL_ALIGN_BOTTOM or FL_ALIGN_INSIDE);
-  fl_set_object_lstyle(obj,FL_BOLD_STYLE);
-  fl_set_pixmapbutton_data(obj, crab45);
-  fl_end_form;
-  create_form_form:=form;
-end;
-
-Var form0 : PFL_FORM;
-    mask,p : TPixmap;
-    H,W : word;
-    
-begin
-   fl_initialize(@argc, argv, 'FormDemo', nil, 0);
-   form0 := create_form_form;
-   p := fl_read_pixmapfile(fl_root, 'crab.xpm', Pword(@w), pword(@h), PPixmap(@mask), nil, nil, 0);
-   fl_set_form_icon(form0, p, mask);
-   fl_show_form(form0,FL_PLACE_CENTER,FL_FULLBORDER, 'IconTest');
-   fl_do_forms();
-end.
-  $Log$
-  Revision 1.2  2000-07-13 11:33:14  michael
-  + removed logs
- 
-}

+ 0 - 103
packages/forms/demo/inputall.pp

@@ -1,103 +0,0 @@
-program inputall;
-
-uses forms;
-
-type TFD_INPUT = record
-	input : PFL_FORM;
-	vdata : pointer;
-	norminput,multiinput,report : PFL_OBJECT;
-   end;
-PFD_INPUT = ^TFD_input;
-
-procedure done_cb( ob : PFL_OBJECT; data : longint);export;
-
-begin
-   halt(0);
-end;
-
-procedure input_cb( ob : PFL_OBJECT; data : longint);export;
-
-var 
-   cx, cy, pos : Longint;
-   buf,temp : string[128];
-
-begin
-   pos := fl_get_input_cursorpos(ob, @cx,@cy);
-   str (pos,temp); buf:='P = '+temp+' ';
-   str (cx,temp); buf:=buf+'x= '+temp+' ';
-   str (cy,temp); buf:=buf+'y= '+temp+#0;
-   fl_set_object_label( PFD_input(ob^.form^.fdui)^.report,@buf[1]);
-end;
-
-procedure hide_show_cb(ob : PFL_OBJECT; data : longint);export;
-
-var  fd: PFD_input;
-
-begin  
-    fd := ob^.form^.fdui;
-    if (fd^.multiinput^.visible<>0) then
-       fl_hide_object(fd^.multiinput)
-    else
-       fl_show_object(fd^.multiinput);
-end;
-
-
-function create_form_input : PFD_input;
-
-var
-  obj : PFL_OBJECT;
-  fdui : PFD_input;
-
-begin
-  new(fdui);
-  fdui^.input := fl_bgn_form(FL_NO_BOX, 441, 441);
-  obj := fl_add_box(FL_UP_BOX,0,0,441,441,'');
-  obj := fl_add_input(FL_NORMAL_INPUT,40,40,340,30,'NormalInput');
-  fdui^.norminput := obj;    
-  fl_set_object_lalign(obj,FL_ALIGN_TOP_LEFT);
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@input_cb),0);
-  obj := fl_add_input(FL_INT_INPUT,40,100,160,30,'IntInput');
-    fl_set_object_lalign(obj,FL_ALIGN_TOP_LEFT);
-  obj := fl_add_input(FL_FLOAT_INPUT,230,100,160,30,'FloatInput');
-    fl_set_object_lalign(obj,FL_ALIGN_TOP_LEFT);
-  obj := fl_add_input(FL_DATE_INPUT,40,150,160,30,'DateInput');
-    fl_set_object_lalign(obj,FL_ALIGN_TOP_LEFT);
-  obj := fl_add_input(FL_SECRET_INPUT,230,150,160,30,'Secretinput');
-    fl_set_object_lalign(obj,FL_ALIGN_TOP_LEFT);
-  obj:= fl_add_input(FL_MULTILINE_INPUT,40,210,360,180,'MMM');
-  fdui^.multiinput := obj;    
-  fl_set_object_callback(obj,PFL_CALLBACKPTR(@input_cb),0);
-  obj := fl_add_text(FL_NORMAL_TEXT,30,400,210,30,'');
-  fdui^.report := obj;
-    fl_set_object_lalign(obj,FL_ALIGN_LEFT or FL_ALIGN_INSIDE);
-  obj := fl_add_button(FL_NORMAL_BUTTON,330,400,70,30,'Done');
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@done_cb),0);
-  obj := fl_add_button(FL_NORMAL_BUTTON,250,400,70,30,'Hide/Show');
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@hide_show_cb),0);
-  fl_end_form();
-  fdui^.input^.fdui := fdui;
-  create_form_input:=fdui;
-end;
-
-
-var fd_input : PFD_input;
-
-begin
-   fl_initialize(@argc, argv, '', nil, 0);
-   fd_input := create_form_input();
-
-   { fill-in form initialization code }
-   fl_set_object_dblbuffer(fd_input^.report,1);
-   fl_set_object_return(fd_input^.multiinput,FL_RETURN_ALWAYS);
-   fl_set_object_return(fd_input^.norminput,FL_RETURN_ALWAYS);
-
-   { show the first form }
-   fl_show_form(fd_input^.input,FL_PLACE_CENTERFREE,FL_FULLBORDER,'input');
-   while (fl_do_forms<>nil) do;
-end.
-
-  $Log$
-  Revision 1.2  2000-07-13 11:33:14  michael
-  + removed logs
- 
-}

+ 0 - 72
packages/forms/demo/invslider.pp

@@ -1,72 +0,0 @@
-program invslider;
-
-uses forms;
-
-type 
-TFD_inv = record
-	inv : PFL_FORM;
-        sl : array[0..2] of PFL_OBJECT;
-	done : PFL_OBJECT;
-	vdata : pointer;
-	ldata : longint;
-	end;
-PFD_inv=^TFD_inv;
-
-var ui : PFD_INV;
-
-procedure invert_it(ob : PFL_OBJECT; data : longint);export;
-
-begin
-   if (fl_get_button(ob)<>0) then
-     begin
-      fl_set_slider_bounds(ui^.sl[0], 1.0, 0.0);
-      fl_set_slider_bounds(ui^.sl[1], 1.0, 0.0);
-      fl_set_slider_bounds(ui^.sl[2], 1.0, 0.0);
-     end
-   else
-     begin
-      fl_set_slider_bounds(ui^.sl[0], 0.0, 1.0);
-      fl_set_slider_bounds(ui^.sl[1], 0.0, 1.0);
-      fl_set_slider_bounds(ui^.sl[2], 0.0, 1.0);
-    end;
-end;
-
-function create_form_inv : PFD_inv; 
-var 
-  obj : PFL_OBJECT ;
-  fdui : PFD_inv;
-
-begin
-  new(fdui);
-  fdui^.inv := fl_bgn_form(FL_NO_BOX, 245, 280);
-  obj := fl_add_box(FL_UP_BOX,0,0,245,280,'');
-  obj := fl_add_valslider(FL_VERT_SLIDER,20,30,35,230,'');
-  fdui^.sl[0] := obj;
-  obj := fl_add_valslider(FL_VERT_FILL_SLIDER,65,30,35,230,'');
-  fdui^.sl[1] := obj;
-  obj := fl_add_valslider(FL_VERT_NICE_SLIDER,115,30,35,230,'');
-  fdui^.sl[2] := obj;
-    fl_set_object_boxtype(obj,FL_FLAT_BOX);
-    fl_set_object_color(obj,FL_COL1,FL_BLUE);
-  obj := fl_add_button(FL_RETURN_BUTTON,160,235,75,30,'Exit');
-  fdui^.done := obj ;
-  obj := fl_add_checkbutton(FL_PUSH_BUTTON,165,30,75,35,'Invert');
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@invert_it),0);
-  fl_end_form;
-
-  create_form_inv:=fdui;
-end;
-
-
-begin
-   fl_initialize(@argc, argv, 'FormDemo', nil, 0);
-   ui := create_form_inv;
-
-   fl_show_form(ui^.inv,FL_PLACE_CENTER,FL_TRANSIENT,'inv');
-   while fl_do_forms <> ui^.done do;
-end.
-  $Log$
-  Revision 1.2  2000-07-13 11:33:14  michael
-  + removed logs
- 
-}

+ 0 - 108
packages/forms/demo/lalign.pp

@@ -1,108 +0,0 @@
-program lalign;
-
-{ different label alignments }
-uses forms;
-
-type
-TFD_Form0 = record
-	form0 : PFL_FORM;
-	box,inside,center : PFL_Object;
-	vdata : pointer;
-	ldata  : longint;
-end;
-PFD_Form0 = ^TFD_Form0;
-
-var fd_form0 : PFD_form0;
-
-    align :integer;
-
-
-Procedure align_cb(ob : PFL_OBJECT; n : longint);export;
-begin
-    if fl_get_button(fd_form0^.inside)<>0 then 
-       n:=n or FL_ALIGN_INSIDE;
-    fl_set_object_lalign(fd_form0^.box, n);
-end;
-
-Procedure inside_cb(Ob : PFL_OBJECT; data : longint);export;
-
-begin
-   if fl_get_button(ob)<>0 then
-      fd_form0^.box^.align := fd_form0^.box^.align or FL_ALIGN_INSIDE
-   else
-      fd_form0^.box^.align := fd_form0^.box^.align and not FL_ALIGN_INSIDE;
-   fl_redraw_form(fd_form0^.form0);
-end;
-
-function create_form_form0 : PFD_form0;
-
-Var
-  obj : PFL_OBJECT;
-  fdui : PFD_form0;
-begin
-  new(fdui);
-  fdui^.form0 := fl_bgn_form(FL_NO_BOX, 351, 170);
-  obj := fl_add_box(FL_UP_BOX,0,0,351,170,'');
-  obj := fl_add_box(FL_UP_BOX,190,45,90,45,'abcdefg'#10'hijklmno');
-  fdui^.box := obj ;
-  {  fl_set_object_clip(obj, 1); }
-  obj := fl_add_lightbutton(FL_PUSH_BUTTON,20,120,90,30,'Inside');
-  fdui^.inside := obj;
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@inside_cb),0);
- fl_bgn_group();
-  obj := fl_add_button(FL_RADIO_BUTTON,20,20,30,30,'@#7->');
-    fl_set_object_lcol(obj,FL_BLUE);
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@align_cb),FL_ALIGN_LEFT_TOP);
-  obj := fl_add_button(FL_RADIO_BUTTON,50,20,30,30,'@#8->');
-    fl_set_object_lcol(obj,FL_BLUE);
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@align_cb),FL_ALIGN_TOP);
-  obj := fl_add_button(FL_RADIO_BUTTON,80,20,30,30,'@#9->');
-    fl_set_object_lcol(obj,FL_BLUE);
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@align_cb),FL_ALIGN_RIGHT_TOP);
-  obj := fl_add_button(FL_RADIO_BUTTON,80,50,30,30,'@#->');
-    fl_set_object_lcol(obj,FL_BLUE);
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@align_cb),FL_ALIGN_RIGHT);
-  obj := fl_add_button(FL_RADIO_BUTTON,50,50,30,30,'@circle');
-  fdui^.center := obj;
-    fl_set_object_lcol(obj,FL_RED);
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@align_cb),FL_ALIGN_CENTER);
-  obj := fl_add_button(FL_RADIO_BUTTON,20,50,30,30,'@#<-');
-    fl_set_object_lcol(obj,FL_BLUE);
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@align_cb),FL_ALIGN_LEFT);
-  obj := fl_add_button(FL_RADIO_BUTTON,20,80,30,30,'@#1->');
-    fl_set_object_lcol(obj,FL_BLUE);
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@align_cb),FL_ALIGN_LEFT_BOTTOM);
-  obj := fl_add_button(FL_RADIO_BUTTON,50,80,30,30,'@#2->');
-    fl_set_object_lcol(obj,FL_BLUE);
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@align_cb),FL_ALIGN_BOTTOM);
-  obj := fl_add_button(FL_RADIO_BUTTON,80,80,30,30,'@#3->');
-    fl_set_object_lcol(obj,FL_BLUE);
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@align_cb),FL_ALIGN_RIGHT_BOTTOM);
-  fl_end_group();
-
-  obj := fl_add_button(FL_NORMAL_BUTTON,140,120,70,30,'Done');
-  fl_end_form();
-
-  create_form_form0 := fdui;
-end;
-
-begin
-   fl_initialize(@argc, argv, 'FormDemo', nil, 0);
-   fd_form0 := create_form_form0();
-
-   { fill-in form initialization code }
-   fl_set_form_dblbuffer(fd_form0^.form0, 1);
-   align := fd_form0^.box^.align or FL_ALIGN_INSIDE;
-   if align <> fd_form0^.box^.align then
-     fl_set_button(fd_form0^.inside, 1);
-
-   { show the first form }
-   fl_show_form(fd_form0^.form0,FL_PLACE_FREE,FL_FULLBORDER,'form0');
-   fl_do_forms();
-end.
-
-  $Log$
-  Revision 1.2  2000-07-13 11:33:14  michael
-  + removed logs
- 
-}

+ 0 - 69
packages/forms/demo/ldial.pp

@@ -1,69 +0,0 @@
-{ This is an example of the use of dials.
-}
-Program ldial;
-
-uses forms;
-
-
-var 
-form : PFL_FORM ;
-button, red, green, blue, redtext, greentext, bluetext, theresult : PFL_OBJECT;
-
-procedure makeform;
-begin
-  form := fl_bgn_form(FL_UP_BOX,300,330);
-    button := fl_add_button(FL_NORMAL_BUTTON,45,15,210,45,'A Color Editor');
-    fl_set_object_lsize(button,FL_LARGE_SIZE);
-
-    red := fl_add_dial(FL_LINE_DIAL,30,240,60,60,'Red');
-    fl_set_dial_bounds(red,0.0,255.0);
-    fl_set_dial_value(red,128.0);
-    fl_set_object_color(red,FL_RED,FL_DIAL_COL2);
-    redtext := fl_add_box(FL_DOWN_BOX,105,255,50,25,'');
-
-    green := fl_add_dial(FL_LINE_DIAL,30,155,60,60,'Green');
-    fl_set_dial_bounds(green,0.0,255.0);
-    fl_set_dial_value(green,128.0);
-    fl_set_dial_angles(green, 45.0, (360-45.0)); 
-    fl_set_object_color(green,FL_GREEN,FL_DIAL_COL2);
-    greentext := fl_add_box(FL_DOWN_BOX,105,170,50,25,'');
-
-    blue := fl_add_dial(FL_LINE_DIAL,30,70,60,60,'Blue');
-    fl_set_dial_bounds(blue,0.0,255.0);
-    fl_set_dial_value(blue,128.0);
-    fl_set_object_color(blue,FL_BLUE,FL_DIAL_COL2);
-    bluetext := fl_add_box(FL_DOWN_BOX,105,90,50,25,'');
-
-    theresult := fl_add_box(FL_DOWN_BOX,180,70,90,245,'');
-    fl_set_object_color(theresult,FL_FREE_COL1,FL_FREE_COL1);
-    fl_set_object_dblbuffer(theresult,1);
-  fl_end_form;
-end;
-
-var
-  ret : PFL_OBJECT ;
-  r,g,b : Longint;
-  st : string[100];
-
-begin
-  fl_initialize(@argc, argv, 'FormDemo', nil, 0);
-  makeform;
-  fl_show_form(form,FL_PLACE_MOUSE,FL_TRANSIENT,'A Form');
-  repeat
-    r :=  round(fl_get_dial_value(red)+0.001);
-    g :=  round(fl_get_dial_value(green)+0.001);
-    b :=  round(fl_get_dial_value(blue)+0.001);
-    fl_mapcolor(FL_FREE_COL1,r,g,b);
-    fl_redraw_object(theresult);
-    str(r,st);st:=st+#0; fl_set_object_label(redtext,@st[1]);
-    str(g,st);st:=st+#0; fl_set_object_label(greentext,@st[1]);
-    str(b,st);st:=st+#0; fl_set_object_label(bluetext,@st[1]);
-    ret := fl_do_forms;
-  until (ret = button);
-  fl_hide_form(form);
-end.
-  $Log$
-  Revision 1.2  2000-07-13 11:33:14  michael
-  + removed logs
- 
-}

+ 0 - 146
packages/forms/demo/ll.pp

@@ -1,146 +0,0 @@
-program ll;
-
-uses forms;
-
-{*** Forms and Objects ***}
-
-Type
-TFD_axypform = record
-	axypform : PFL_FORM;
-	xyplot : PFL_OBJECT;
-	status : PFL_OBJECT;
-	vdata : pointer;
-	ldata : longint;
-end;
-PFD_axypform = ^TFD_axypform;
-
-
-var
-xypui : PFD_axypform;
-
-{ callbacks for form axypform }
-Procedure xyplot_cb(ob : PFL_OBJECT; data : longint);export;
-
-
-var
-    x, y : double;
-    i : Longint;
-    temp,buf : string[64];
-    
-begin
-    fl_get_xyplot(ob, @x, @y, @i);
-    if (i < 0) then exit;
-    str (x,buf);
-    str (y,temp);
-    Buf:='X= '+Buf+' Y= '+temp+#0;
-    fl_set_object_label(xypui^.status, @buf[1]);
-end;
-
-
-Procedure alwaysreturn_cb(ob : PFL_OBJECT; data : longint); export;
-
-begin
-   fl_set_xyplot_return(xypui^.xyplot, fl_get_button(ob));
-end;
-
-procedure interpolate_cb(ob : PFL_OBJECT; data : longint);export;
-
-begin
-   if fl_get_button(ob)=0 then
-     fl_set_xyplot_interpolate(xypui^.xyplot, 0,2,0.2)
-   else 
-     fl_set_xyplot_interpolate(xypui^.xyplot, 0,0,0.2);
-end;
-
-Procedure inspect_cb(ob : PFL_OBJECT; data :longint); export; 
-
-begin
-   fl_set_xyplot_inspect(xypui^.xyplot, fl_get_button(ob));
-end;
-
-
-procedure notic_cb(ob : PFL_OBJECT; data :longint); export;
-
-var notic : Longint;
-
-begin
-   notic := fl_get_button(ob);
-
-   if (notic)<>0 then
-     begin
-     fl_set_xyplot_xtics(xypui^.xyplot, -1, -1);
-     fl_set_xyplot_ytics(xypui^.xyplot, -1, -1);
-     end
-   else
-     begin
-     fl_set_xyplot_xtics(xypui^.xyplot, 0, 0);
-     fl_set_xyplot_ytics(xypui^.xyplot, 0, 0);
-     end;
-end;
-
-
-Function create_form_axypform : PFD_axypform;
-
-var
-  obj : PFL_OBJECT;
-  fdui : PFD_axypform;
-  
-begin
-  new(fdui);
-
-  fdui^.axypform := fl_bgn_form(FL_NO_BOX, 431, 301);
-  obj := fl_add_box(FL_UP_BOX,0,0,431,301,'');
-  obj := fl_add_xyplot(FL_ACTIVE_XYPLOT,20,50,285,235,'');
-  fdui^.xyplot :=  obj;
-    fl_set_object_boxtype(obj,FL_DOWN_BOX);
-    fl_set_object_color(obj, FL_BLACK, FL_GREEN);
-    fl_set_object_lalign(obj,FL_ALIGN_BOTTOM or FL_ALIGN_INSIDE);
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@xyplot_cb),0);
-  obj := fl_add_checkbutton(FL_PUSH_BUTTON,315,40,80,25,'AlwaysReturn');
-    fl_set_object_color(obj,FL_COL1,FL_BLUE);
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@alwaysreturn_cb),0);
-  obj := fl_add_checkbutton(FL_PUSH_BUTTON,315,65,80,25,'Interpolate');
-    fl_set_object_color(obj,FL_COL1,FL_BLUE);
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@interpolate_cb),0);
-  obj := fl_add_checkbutton(FL_PUSH_BUTTON,315,90,85,25,'InspectOnly');
-    fl_set_object_color(obj,FL_COL1,FL_BLUE);
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@inspect_cb),0);
-  obj := fl_add_text(FL_NORMAL_TEXT,45,15,170,25,'');
-  fdui^.status := obj;
-    fl_set_object_boxtype(obj, FL_DOWN_BOX);
-  obj := fl_add_button(FL_NORMAL_BUTTON,325,250,90,30,'Done');
-  obj := fl_add_checkbutton(FL_PUSH_BUTTON,315,120,85,25,'NoTics');
-    fl_set_object_color(obj,FL_COL1,FL_BLUE);
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@notic_cb),0);
-  fl_end_form();
-
-  create_form_axypform:=fdui;
-end;
-
-
-var
-   x,y : array[0..24] of double;
-   i : longint;
-
-begin
-   fl_initialize(@argc, argv, 'FormDemo', nil, 0);
-   xypui := create_form_axypform;
-
-   { fill-in form initialization code }
-   fl_set_object_dblbuffer(xypui^.status, 1);
-   for i  := 0 to 10 do
-      begin
-      x[i] := i;
-      y[i] := i;
-      end;
-   fl_set_xyplot_data(xypui^.xyplot, x, y, 11, '','','');
-
-   { show the first form }
-   fl_show_form(xypui^.axypform,FL_PLACE_MOUSE,FL_TRANSIENT,'axypform');
-   fl_do_forms();
-end.
-  $Log$
-  Revision 1.2  2000-07-13 11:33:14  michael
-  + removed logs
- 
-}

+ 0 - 63
packages/forms/demo/longlabel.pp

@@ -1,63 +0,0 @@
-{ Demo of the Use of a very long label }
-program longlabel;
-
-uses forms;
-
-Const
-label1 : pchar = 'This demo shows the use of some very'#10+
-              'long labels. The dynamic storage allocation'#10+
-              'for such long labels should guarantee that'#10+
-              'all of this works without any problem.';
-{ This shows a funny bug in FPK 0.9.1 :) MVC.}
-
-label2 : pchar ='This is the second string that should again'#10+
-             'be a bit larger such that a new, larger amount'#10+
-             'of storage has to be allocated for the label.'#10+
-             'This is of course no problem. By the way,'#10+
-             'dynamic allocation of storage saves a lot'#10+
-             'of memory because for most objects the label'#10+
-             'is much shorter than the 64 bytes that were'#10+
-             'allocated for it in the previous version of'#10+
-             'the Forms Library';
-
-label3 : pchar ='And now back to the first one:'#10#10+
-             'This demo shows the use of some very'#10+
-             'long labels. The dynamic storage allocation'#10+
-             'for such long labels should guarantee that'#10+
-             'all of this works without any problem.';
-
-var
-   form : PFL_FORM;
-   strobj, but : PFL_OBJECT;
-
-begin
-  fl_initialize(@argc, argv, 'FormDemo', nil, 0);
-
-  form := fl_bgn_form(FL_UP_BOX,400,300);
-    strobj := fl_add_box(FL_DOWN_BOX,10,10,380,240,'Press Next');
-    fl_set_object_lsize(strobj,FL_NORMAL_SIZE);
-    but := fl_add_button(FL_NORMAL_BUTTON,160,260,80,30,'Next');
-  fl_end_form();
-
-  fl_set_form_hotobject(form, but);
-  fl_show_form(form,FL_PLACE_HOTSPOT,FL_TRANSIENT,nil);
-
-  fl_do_forms();
-  fl_set_object_label(strobj,label1);
-
-  fl_do_forms();
-  fl_set_object_label(strobj,label2);
-
-  fl_do_forms();
-  fl_set_object_label(strobj, 'Now we turn to a short label');
-  fl_do_forms();
-  fl_set_object_label(strobj,label3);
-
-  fl_set_object_label(but,'Quit');
-  fl_do_forms();
-end.
-  $Log$
-  Revision 1.2  2000-07-13 11:33:14  michael
-  + removed logs
- 
-}

+ 0 - 126
packages/forms/demo/menu.pp

@@ -1,126 +0,0 @@
-{ This demo shows the use of menu's. 
- * The first two are PUSH_MENUs (pop-up).
- * The third one is PULLDOWN_MENU
- * and the last one is TOUCH_MENU
- *
- * a confusing demo, but a good testing program ..
- }
-program menudemo;
-
-uses forms;
-
-Var menu,abox : array[0..3] of PFL_OBJECT;
-    isset : array[0..3] of longint;
-
-   form : PFL_FORM;
-   i, j : longint;
-   
-
-procedure menu_cb(ob : PFL_OBJECT; m : longint);export;
-
-var i,item : longint;
-
-begin
-    item := fl_get_menu(ob);
-
-    if (item <= 0) or (isset[m] = item) then 
-       exit;
-
-    for i := 0 to 3 do
-       if ( i <> m) then
-         begin
-         { enable the old selected color for other menus}
-	 fl_set_menu_item_mode(menu[i], isset[m], Cardinal(FL_PUP_RADIO));
-	 { disable the currently selected color for other menus }
-	 fl_set_menu_item_mode(menu[i], item, Cardinal(FL_PUP_GRAY or FL_PUP_RADIO));
-         end;
-    
-    isset[m] := item;
-    fl_set_object_color(abox[m], FL_BLACK+item, FL_BLACK);
-end; 
-
-procedure done_cb(ob : PFL_OBJECT; data : longint) ; export;
-
-begin
-    halt;
-end;
-
-Function create_form : PFL_Form;
-
-var form : PFL_FORM;
-   obj : PFL_OBJECT;
-
-begin
-   form := fl_bgn_form(FL_NO_BOX,440,380);
-   obj := fl_add_box(FL_BORDER_BOX,0,0,440,380,'');
-     fl_set_object_color(obj,FL_SLATEBLUE,FL_COL1);
-
-   obj := fl_add_menu(FL_PUSH_MENU,0,0,110,30,'Color 1');
-   menu[0] := obj;
-    fl_set_object_shortcut(obj, '1#1', 1);
-    fl_set_object_boxtype(obj, FL_UP_BOX);
-    fl_set_object_callback(obj, PFL_CALLBACKPTR(@menu_cb), 0);
-   obj := fl_add_menu(FL_PUSH_MENU,110,0,110,30,'Color 2');
-   menu[1] := obj;
-    fl_set_object_shortcut(obj, '2#2', 1);
-    fl_set_object_callback(obj, PFL_CALLBACKPTR(@menu_cb), 1);
-   obj := fl_add_menu(FL_PULLDOWN_MENU,220,0,110,30,'Color 3');
-   menu[2] := obj;
-    fl_set_object_shortcut(obj, '3#3', 1);
-    fl_set_object_callback(obj, PFL_CALLBACKPTR(@menu_cb), 2);
-   obj := fl_add_menu(FL_TOUCH_MENU,330,0,110,30,'Color 4');
-   menu[3] := obj;
-    fl_set_object_shortcut(obj, '4#4', 1);
-    fl_set_object_callback(obj, PFL_CALLBACKPTR(@menu_cb), 3);
-
-   abox[0] := fl_add_box(FL_SHADOW_BOX,20,80,70,230,'');
-   abox[1] := fl_add_box(FL_SHADOW_BOX,130,80,70,230,'');
-   abox[2] := fl_add_box(FL_SHADOW_BOX,240,80,70,230,'');
-   abox[3] := fl_add_box(FL_SHADOW_BOX,350,80,70,230,'');
-   obj := fl_add_button(FL_NORMAL_BUTTON,310,330,110,30,'Exit');
-     fl_set_object_callback(obj, PFL_CALLBACKPTR(@done_cb), 0);
-   fl_end_form();
-   {fl_scale_form(form, 0.9, 0.9);}
-   create_form:=form;
-end;
-
-begin
-   fl_initialize(@argc, argv, 'FormDemo', nil, 0);
-
-   form := create_form();
-
-  {fl_setpup_color(FL_SLATEBLUE, FL_BLACK); }
-
-   for i:=0 to 3 do
-      begin
-      fl_show_menu_symbol(menu[i], 1);
-      fl_set_menu(menu[i], 
-              'Red%r1|Green%r1|Yellow%r1|Blue%r1|Purple%r1|Cyran%r1|White%r1');
-      fl_set_menu_item_shortcut(menu[i], 1, 'Rr#R#r');
-      fl_set_menu_item_shortcut(menu[i], 2, 'Gg#G#g');
-      fl_set_menu_item_shortcut(menu[i], 3, 'Yy#Y#y');
-      fl_set_menu_item_shortcut(menu[i], 4, 'Bb#B#b');
-      fl_set_menu_item_shortcut(menu[i], 5, 'Pp#P#p');
-      fl_set_menu_item_shortcut(menu[i], 6, 'Cc#C#c');
-      fl_set_menu_item_shortcut(menu[i], 7, 'Ww#W#w');
-
-      { initially the last three entries are enabled }
-      for j:=5 to 7 do
-         fl_set_menu_item_mode(menu[i], j, Cardinal(FL_PUP_RADIO));
-      { the first four are disabled except the item (i+1) }
-      for j:=1 to 4 do
-         fl_set_menu_item_mode(menu[i], j, Cardinal(FL_PUP_GREY or FL_PUP_RADIO));
-      isset[i] := i + 1;
-      fl_set_object_color(abox[i], FL_BLACK+isset[i], FL_BLACK);
-      fl_set_menu_item_mode(menu[i], isset[i], Cardinal(FL_PUP_CHECK or FL_PUP_RADIO));
-      end;
-   
-  fl_show_form(form,FL_PLACE_CENTER,FL_NOBORDER,Nil);
-  fl_do_forms();
-  fl_hide_form(form);
-end.
-  $Log$
-  Revision 1.2  2000-07-13 11:33:14  michael
-  + removed logs
- 
-}

+ 0 - 34
packages/forms/demo/minput.pp

@@ -1,34 +0,0 @@
-program minput;
-
-uses forms;
-
-procedure input_cb( ob : PFL_OBJECT; data : Longint);export;
-
-var 
-    x, y : Longint;
-begin
-    fl_get_input_cursorpos(ob, @x , @y);
-    writeln ('x= ',x,' y= ',y);
-end;
-
-
-var 
-  form : PFL_FORM;
-  but, obj : PFL_OBJECT;
-
-begin
-  fl_initialize(@argc, argv, 'FormDemo', nil, 0);
-  form := fl_bgn_form(FL_UP_BOX,400,450);
-    obj := fl_add_input(FL_MULTILINE_INPUT,30,270,340,150,'');
-    obj := fl_add_input(FL_MULTILINE_INPUT,30,90,340,150,'');
-    fl_set_object_lsize(obj, FL_NORMAL_SIZE);
-  but := fl_add_button(FL_NORMAL_BUTTON,160,30,80,30,'Exit');
-  fl_end_form();
-  fl_show_form(form,FL_PLACE_CENTERFREE,FL_FULLBORDER,'MultiLineInput');
-  while (obj <> but) do obj:=fl_do_forms;
-end.
-  $Log$
-  Revision 1.2  2000-07-13 11:33:14  michael
-  + removed logs
- 
-}

+ 0 - 57
packages/forms/demo/multilabel.pp

@@ -1,57 +0,0 @@
-{ Multiline labels. }
-program multilabel;
-
-uses forms;
-
-var
-form : PFL_FORM;
-readyobj : PFL_OBJECT;
-
-Procedure create_form;
-
-var obj : PFL_OBJECT;
-
-begin
-  form := fl_bgn_form(FL_NO_BOX,400,470);
-  obj := fl_add_box(FL_UP_BOX,0,0,400,470,'');
-    fl_set_object_color(obj,FL_SLATEBLUE,FL_COL1);
-  obj := fl_add_text(FL_NORMAL_TEXT,140,40,120,120,'This is'#10'a multi-line'#10'labelT');
-    fl_set_object_boxtype(obj,FL_BORDER_BOX);
-    fl_set_object_lalign(obj,FL_ALIGN_TOP);
-  obj := fl_add_text(FL_NORMAL_TEXT,140,160,120,120,'This is'#10'a multi-line'#10'labelC');
-    fl_set_object_boxtype(obj,FL_BORDER_BOX);
-    fl_set_object_color(obj,FL_PALEGREEN,FL_COL1);
-    fl_set_object_lsize(obj,FL_LARGE_SIZE);
-    fl_set_object_lalign(obj,FL_ALIGN_CENTER);
-  obj := fl_add_button(FL_NORMAL_BUTTON,280,400,100,50,'I am sure'#10'that I am'#10'Ready');
-  readyobj :=obj; 
-    fl_set_object_lsize(obj,FL_SMALL_SIZE);
-  obj := fl_add_text(FL_NORMAL_TEXT,260,160,120,120,'This is'#10'a multi-line'#10'labelR');
-    fl_set_object_boxtype(obj,FL_BORDER_BOX);
-    fl_set_object_lalign(obj,FL_ALIGN_RIGHT);
-  obj := fl_add_text(FL_NORMAL_TEXT,140,280,120,120,'This is'#10'a multi-line'#10'labelB');
-    fl_set_object_boxtype(obj,FL_BORDER_BOX);
-    fl_set_object_lalign(obj,FL_ALIGN_BOTTOM);
-  obj := fl_add_text(FL_NORMAL_TEXT,20,160,120,120,'This is'#10'a multi-line'#10'label');
-    fl_set_object_boxtype(obj,FL_BORDER_BOX);
-  fl_end_form();
-end;
-
-var
-  obj : PFL_OBJECT;
- 
-begin
-
-  fl_initialize(@argc, argv, 'FormDemo', nil, 0);
-  create_form;
-  fl_show_form(form,FL_PLACE_CENTER,FL_NOBORDER,'Labels');
-  repeat 
-    obj := fl_do_forms; 
-  until (obj = readyobj);
-  fl_hide_form(form);
-end.
-  $Log$
-  Revision 1.2  2000-07-13 11:33:14  michael
-  + removed logs
- 
-}

+ 0 - 68
packages/forms/demo/ndial.pp

@@ -1,68 +0,0 @@
-{ This is an example of the use of dials.  }
-
-uses forms;
-
-var 
-form : PFL_FORM;
-button, red, green, blue, redtext, greentext, bluetext, theresult : PFL_OBJECT;
-
-procedure  makeform;
-
-begin
-  form := fl_bgn_form(FL_UP_BOX,300,330);
-    button := fl_add_button(FL_NORMAL_BUTTON,45,15,210,45,'A Color Editor');
-    fl_set_object_lsize(button,FL_LARGE_SIZE);
-
-    red := fl_add_dial(FL_NORMAL_DIAL,30,240,60,60,'Red');
-    fl_set_dial_bounds(red,0.0,255.0);
-    fl_set_dial_value(red,128.0);
-    fl_set_object_color(red,FL_RED,FL_DIAL_COL2);
-    redtext := fl_add_box(FL_DOWN_BOX,105,255,50,25,'');
-
-    green := fl_add_dial(FL_NORMAL_DIAL,30,155,60,60,'Green');
-    fl_set_dial_bounds(green,0.0,255.0);
-    fl_set_dial_value(green,128.0);
-    fl_set_object_color(green,FL_GREEN,FL_DIAL_COL2);
-    greentext := fl_add_box(FL_DOWN_BOX,105,170,50,25,'');
-
-    blue := fl_add_dial(FL_NORMAL_DIAL,30,70,60,60,'Blue');
-    fl_set_dial_bounds(blue,0.0,255.0);
-    fl_set_dial_value(blue,128);
-    fl_set_object_color(blue,FL_BLUE,FL_DIAL_COL2);
-    bluetext := fl_add_box(FL_DOWN_BOX,105,90,50,25,'');
-
-    theresult := fl_add_box(FL_DOWN_BOX,180,70,90,245,'');
-    fl_set_object_color(theresult,FL_FREE_COL1,FL_FREE_COL1);
-    fl_set_object_dblbuffer(theresult, 1); 
-  fl_end_form;
-end;
-
-
-var
-  ret : PFL_OBJECT;
-  r,g,b : Longint;
-  st : string[100];
-
-begin
-
-  fl_initialize(@argc, argv, 'FormDemo', nil, 0);
-  makeform;
-  fl_show_form(form,FL_PLACE_MOUSE,FL_TRANSIENT,'A Form');
-  repeat
-    r := round( fl_get_dial_value(red));
-    g := round(fl_get_dial_value(green));
-    b := round(fl_get_dial_value(blue));
-    fl_mapcolor(FL_FREE_COL1,r,g,b);
-    fl_redraw_object(theresult);
-    str(r,st);st:=st+#0; fl_set_object_label(redtext,@st[1]);
-    str(g,st);st:=st+#0; fl_set_object_label(greentext,@st[1]);
-    str(b,st);st:=st+#0; fl_set_object_label(bluetext,@st[1]);
-    ret := fl_do_forms;
-  until (ret = button);
-  fl_hide_form(form);
-end.
-  $Log$
-  Revision 1.2  2000-07-13 11:33:14  michael
-  + removed logs
- 
-}

+ 0 - 157
packages/forms/demo/newbutton.pp

@@ -1,157 +0,0 @@
-{
- * Demo showing the use of user defined object class: CROSSBUTTON
- *
- * Form definition file generated with fdesign. 
- * changed stub button to crossbutton
- }
-
-uses forms;
-
-Const FL_CROSSBUTTON=2000;
-      FL_CROSSBUTTON_BW = 2;
-
-{ How to draw it }
-type TSPEC = TFL_BUTTON_STRUCT;
-     PSPEC = ^TSPEC;
-     
-Procedure draw_crossbutton(ob : PFL_OBJECT);export;
-
-var temp : longint;
-    xx, yy, ww, hh ,tt : TFL_Coord;
-    
-begin 
-   temp:=0;
-   { if redraw is demanded by FL_ENTER, ignore it }
-
-   if PSPEC(ob^.spec)^.event = FL_ENTER then exit;
-
-   { draw the bounding box first }
-   fl_drw_box(ob^.boxtype, ob^.x, ob^.y, ob^.w, ob^.h, ob^.col1, ob^.bw);
-
-   { draw the box that contains the cross }
-   if ob^.w>ob^.h then tt:=ob^.h else tt:=ob^.w;
-
-    ww := tt div 2 - 1;
-    hh:=ww;
-    xx := ob^.x + FL_BOUND_WIDTH;
-    yy := ob^.y + (ob^.h - hh) div 2;
-
-
-   { if pushed, draw a down box with the cross }
-   if PSPEC(ob^.spec)^.val<>0 then
-      begin
-      fl_drw_box(FL_DOWN_BOX, xx, yy, ww, hh, ob^.col1, ob^.bw);
-      fl_drw_text(FL_ALIGN_CENTER, xx-2, yy-2, ww+4, hh+4, ob^.col2, 0, 0, '@9plus');
-      end
-   else
-     begin
-      fl_drw_box(FL_UP_BOX, xx, yy, ww, hh, ob^.col1, ob^.bw);
-     end;
-
-    { label }
-    if (ob^.align = FL_ALIGN_CENTER) then
-	fl_drw_text(FL_ALIGN_LEFT, xx + ww + 3, ob^.y, 0, ob^.h,
-		    ob^.lcol, ob^.lstyle, ob^.lsize, ob^.thelabel)
-    else
-        fl_draw_object_label_outside(ob);
-
-    if (ob^.thetype = FL_RETURN_BUTTON) then
-	fl_drw_text(FL_ALIGN_CENTER,
-		    TFL_Coord (ob^.x + ob^.w - round(0.8 * ob^.h)),
-		    TFL_Coord (ob^.y + round(0.2 * ob^.h)),
-		    TFL_Coord (round(0.6 * ob^.h)),
-                    TFL_Coord (round(0.6 * ob^.h)), ob^.lcol, 0, 0, '@returnarrow');
-
-end;
-
-
-{ creation }
-function fl_create_crossbutton(Thetype : Longint; x,y,w,h : TFL_Coord; thelabel : Pchar) : PFL_OBJECT;
-
-var ob : PFL_OBJECT;
-
-begin
-     fl_add_button_class(FL_CROSSBUTTON, PFL_Drawbutton(@draw_crossbutton), nil); 
-     ob := fl_create_generic_button(FL_CROSSBUTTON, thetype, x, y,w, h, thelabel);
-     ob^.boxtype := FL_NO_BOX;
-     ob^.col2 := FL_BLACK;   { cross color }
-     { ob^.bw := FL_CROSSBUTTON_BW; }
-     fl_create_crossbutton:=ob;
-end;
-
-function fl_add_crossbutton(Thetype : longint; x,y,w,h : TFL_COORD; thelabel : pchar): PFL_OBJECT;
-
-var ob : PFL_OBJECT;
-    theform : PFL_FORM;
-    
-begin
-    ob := fl_create_crossbutton(thetype, x, y, w, h, thelabel);
-    theform:=fl_current_form;
-    fl_add_object(theform, ob);
-    fl_add_crossbutton:=ob;
-end;
-
-{*** Forms and Objects ***}
-type TFD_NEwBut = record
-	newbut : PFL_FORM;
-	bexit : PFL_object;
-	vdata : pointer;
-	ldata : Longint;
-end;
-PFD_NewBut= ^TFD_NewBut;
-
-function create_form_newbut : PFD_Newbut;
-
-var
-  obj : PFL_OBJECT;
-  fdui  : PFD_newbut;
-  oldbw : longint;
-  
-begin
-  new (fdui);
-  oldbw := fl_get_border_width;
-
-  fl_set_border_width(-2);
-  fdui^.newbut := fl_bgn_form(FL_NO_BOX, 310, 190);
-  obj := fl_add_box(FL_UP_BOX,0,0,310,190,'');
-  obj := fl_add_labelframe(FL_ENGRAVED_FRAME,40,45,100,120,'CrossB');
-    fl_set_object_boxtype(obj,FL_FLAT_BOX);
-    fl_set_object_lstyle(obj,FL_BOLD_STYLE);
-  obj := fl_add_crossbutton(FL_RADIO_BUTTON,50,115,80,30,'cross1');
-    fl_set_object_color(obj,FL_COL1,FL_RED);
-  obj := fl_add_crossbutton(FL_RADIO_BUTTON,50,85,80,30,'Button');
-    fl_set_object_color(obj,FL_COL1,FL_GREEN);
-  obj := fl_add_crossbutton(FL_RADIO_BUTTON,50,55,80,30,'Button');
-    fl_set_object_color(obj,FL_COL1,FL_BLUE);
-  obj := fl_add_labelframe(FL_ENGRAVED_FRAME,180,45,100,120,'CrossB');
-    fl_set_object_boxtype(obj,FL_FLAT_BOX);
-    fl_set_object_lstyle(obj,FL_BOLD_STYLE);
-  obj := fl_add_crossbutton(FL_PUSH_BUTTON,190,115,80,30,'Button');
-    fl_set_object_color(obj,FL_COL1,FL_RED);
-  obj := fl_add_crossbutton(FL_PUSH_BUTTON,190,85,90,30,'Button');
-    fl_set_object_color(obj,FL_COL1,FL_GREEN);
-  obj := fl_add_crossbutton(FL_PUSH_BUTTON,190,55,80,30,'Button');
-    fl_set_object_color(obj,FL_COL1,FL_BLUE);
-  obj := fl_add_button(FL_NORMAL_BUTTON,125,10,65,25,'Exit');
-  fdui^.bexit :=obj;
-  fl_end_form;
-  fl_set_border_width(oldbw);
-
-  create_form_newbut:=fdui;
-end;
-
-
-var cbform : PFD_newbut;
-
-begin
-      fl_initialize(@argc, argv, 'FormDemo', nil, 0);
-      cbform := create_form_newbut();
-      fl_show_form(cbform^.newbut, FL_PLACE_CENTER, 0, nil);
-      while(fl_do_forms <> cbform^.bexit) do ;
-end.
-
-  $Log$
-  Revision 1.2  2000-07-13 11:33:14  michael
-  + removed logs
- 
-}

+ 0 - 58
packages/forms/demo/nomail.xbm

@@ -1,58 +0,0 @@
-Const 
-
-nomail_width = 64;
-nomail_height = 64;
-
-nomail_bits : array[0..511] of byte =
-(
-    $ff, $ff, $ff, $ff, $ff, $ff, $ff, $ff, $01, $00, $00, $00,
-    $00, $00, $00, $80, $01, $00, $00, $00, $00, $00, $00, $80,
-    $01, $00, $00, $00, $00, $00, $00, $80, $01, $00, $00, $80,
-    $07, $00, $00, $80, $01, $00, $00, $70, $38, $00, $00, $80,
-    $01, $00, $00, $0e, $c0, $00, $00, $80, $01, $00, $c0, $01,
-
-    $00, $01, $00, $80, $01, $00, $38, $00, $00, $02, $00, $80,
-    $01, $00, $06, $00, $00, $04, $00, $80, $01, $c0, $1f, $00,
-    $00, $04, $00, $80, $01, $30, $60, $00, $00, $08, $00, $80,
-    $01, $08, $80, $00, $00, $08, $00, $80, $01, $04, $07, $01,
-    $00, $10, $00, $80, $01, $82, $0f, $02, $00, $10, $00, $80,
-
-    $01, $82, $0f, $02, $00, $10, $00, $80, $01, $01, $07, $04,
-    $00, $20, $00, $80, $01, $01, $00, $04, $00, $20, $00, $80,
-    $81, $00, $00, $08, $00, $26, $00, $80, $81, $00, $00, $08,
-    $80, $27, $00, $80, $81, $00, $00, $08, $e0, $27, $00, $80,
-    $81, $22, $a2, $08, $d8, $27, $00, $80, $41, $36, $a5, $10,
-
-    $c6, $27, $00, $80, $41, $aa, $a8, $90, $c1, $27, $00, $80,
-    $41, $aa, $af, $90, $c1, $27, $00, $80, $41, $a2, $a8, $10,
-    $c0, $27, $00, $80, $41, $a2, $a8, $17, $c0, $21, $00, $80,
-    $41, $00, $00, $10, $40, $20, $00, $80, $41, $00, $00, $10,
-    $00, $20, $00, $80, $41, $fe, $ff, $17, $00, $20, $00, $80,
-
-    $41, $00, $00, $10, $00, $30, $00, $80, $41, $fe, $ff, $17,
-    $00, $3c, $0e, $80, $41, $00, $00, $10, $00, $0f, $11, $80,
-    $41, $00, $00, $10, $c0, $1b, $11, $80, $41, $00, $00, $10,
-    $f0, $e4, $10, $80, $41, $00, $00, $10, $3c, $84, $08, $80,
-    $41, $00, $00, $10, $0f, $88, $3c, $80, $41, $00, $00, $d0,
-
-    $03, $f0, $43, $80, $41, $00, $00, $f0, $01, $8c, $43, $80,
-    $c1, $ff, $ff, $3f, $01, $82, $24, $80, $c1, $ff, $ff, $1f,
-    $01, $82, $18, $80, $01, $00, $02, $02, $01, $fc, $08, $80,
-    $01, $00, $02, $02, $01, $20, $09, $80, $01, $00, $02, $02,
-    $01, $10, $06, $80, $01, $00, $02, $02, $01, $10, $00, $80,
-
-    $01, $00, $02, $02, $01, $08, $00, $80, $01, $00, $02, $02,
-    $01, $08, $00, $80, $01, $00, $02, $02, $01, $b4, $3f, $80,
-    $01, $00, $02, $02, $01, $0e, $28, $80, $01, $00, $02, $02,
-    $01, $03, $16, $80, $01, $00, $02, $02, $81, $c0, $11, $80,
-    $01, $00, $02, $02, $41, $38, $08, $80, $01, $00, $02, $02,
-
-    $21, $04, $04, $80, $01, $00, $02, $02, $11, $03, $02, $80,
-    $01, $00, $02, $02, $c9, $80, $01, $80, $01, $00, $02, $02,
-    $25, $60, $00, $80, $01, $00, $02, $02, $13, $18, $00, $80,
-    $01, $00, $02, $02, $01, $07, $00, $80, $01, $00, $02, $c2,
-    $fe, $00, $00, $80, $01, $00, $02, $32, $00, $00, $00, $80,
-
-    $01, $00, $02, $0e, $00, $00, $00, $80, $01, $00, $fe, $03,
-    $00, $00, $00, $80, $01, $00, $00, $00, $00, $00, $00, $80,
-    $ff, $ff, $ff, $ff, $ff, $ff, $ff, $ff );

+ 0 - 116
packages/forms/demo/objinactive.pp

@@ -1,116 +0,0 @@
-{ Demo showing activating and deactivating objects
-}
-program objin;
-
-uses forms;
-
-var 
-form : PFL_FORM;
-
-        button1,
-        button2,
-        button3,
-        button4,
-        group,
-        firstbut : PFL_OBJECT;
-
-procedure  exit_cb(obj : PFL_OBJECT; arg : longint); export;
-begin
- halt;
-end;
-
-
-
-Procedure setit(obj : PFL_OBJECT; val : longint); 
-begin
-  if (val<>0) then
-    begin
-    fl_set_object_lcol(obj,FL_BLACK);
-    fl_activate_object(obj);
-    end
-  else
-    begin
-    fl_set_object_lcol(obj,FL_INACTIVE);
-    fl_deactivate_object(obj);
-    end
-end;
-
-Procedure setit_cb(obj : PFL_OBJECT; val : longint); export;
-
-begin
-  setit (obj,val)
-end;
-
-Procedure doit(b1,b2,b3,b4 : longint);
-
-begin
-  setit(button1,b1);
-  setit(button2,b2);
-  setit(button3,b3);
-  setit(button4,b4);
-end;
-
-Procedure set_active(obj : PFL_OBJECT; arg : longint); export;
-
-begin
-  case arg of 
-    0: doit(1,1,1,1);
-    1: doit(0,0,0,0);
-    2: doit(0,1,0,1);
-    3: doit(1,0,1,0);
-  end;
-end;
-
-Procedure create_form;
-
-var obj : PFL_OBJECT;
-
-begin
-  form := fl_bgn_form(FL_NO_BOX,420,230);
-  obj := fl_add_box(FL_UP_BOX,0,0,420,230,'');
-    fl_set_object_color(obj,FL_SLATEBLUE,FL_COL1);
-  obj := fl_add_button(FL_NORMAL_BUTTON,20,170,150,40,'Button 1');
-  button1 := obj;
-    fl_set_object_lsize(obj,FL_LARGE_SIZE);
-    fl_set_button_shortcut(obj, '1 ', 1);
-  obj := fl_add_button(FL_NORMAL_BUTTON,20,120,150,40,'Button 2');
-  button2 := obj;
-    fl_set_object_lsize(obj,FL_LARGE_SIZE);
-    fl_set_button_shortcut(obj, '2 ', 1);
-  obj := fl_add_button(FL_NORMAL_BUTTON,20,70,150,40,'Button 3');
-  button3 := obj;
-    fl_set_object_lsize(obj,FL_LARGE_SIZE);
-    fl_set_button_shortcut(obj, '3 ', 1);
-  obj := fl_add_button(FL_NORMAL_BUTTON,20,20,150,40,'Button 4');
-  button4 := obj;
-    fl_set_button_shortcut(obj, '4 ', 1);
-    fl_set_object_lsize(obj,FL_LARGE_SIZE);
-  group := fl_bgn_group();
-  obj := fl_add_lightbutton(FL_RADIO_BUTTON,260,180,140,30,'All active');
-  firstbut := obj;
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@set_active),0);
-  obj := fl_add_lightbutton(FL_RADIO_BUTTON,260,150,140,30,'Non active');
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@set_active),1);
-  obj := fl_add_lightbutton(FL_RADIO_BUTTON,260,120,140,30,'Even active');
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@set_active),2);
-  obj := fl_add_lightbutton(FL_RADIO_BUTTON,260,90,140,30,'Odd active');
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@set_active),3);
-  fl_end_group();
-  obj := fl_add_button(FL_NORMAL_BUTTON,270,20,130,30,'Quit');
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@exit_cb),0);
-  fl_end_form();
-end;
-
-begin
-  fl_initialize(@argc, argv, 'FormDemo', nil, 0);
-  create_form;
-
-  fl_set_button(firstbut,1);
-  fl_show_form(form,FL_PLACE_CENTER,FL_NOBORDER,NiL);
-  while (fl_do_forms()<>nil) do 
-    begin end;
-end.  $Log$
-end.  Revision 1.2  2000-07-13 11:33:14  michael
-end.  + removed logs
-end. 
-}

+ 0 - 50
packages/forms/demo/objpos.pp

@@ -1,50 +0,0 @@
-program objpos;
-
-uses forms;
-
-const
-  dx : TFL_Coord = 11 ;
-  dy : TFL_Coord = 7 ;
-
-procedure move_cb(ob : PFL_OBJECT; data : longint);export;
-
-var
-   but : PFL_OBJECT;
-   x,y,w,h : TFL_COORD; 
-
-begin
-   but := PFL_OBJECT (data);
-   fl_get_object_geometry(but,@x,@y, @w, @h);
-
-   if ( (x + dx) < 0) or ( (x+w+dx) >= but^.form^.w) then
-       dx := -dx;
-   if ( (y + dy) < 0) or ( (y+h+dy) >= but^.form^.h) then
-       dy := -dy;
-    x := x+dx;
-    y := y+dy;
-
-    fl_set_object_position(but,x,y);
-end;
-
-var
-  form : PFL_FORM;
-  but, obj : PFL_OBJECT ;
-
-begin
-  fl_initialize(@argc, argv, 'FormDemo', nil, 0);
-
-  form := fl_bgn_form(FL_DOWN_BOX,400,200);
-    but := fl_add_button(FL_NORMAL_BUTTON,140,160,70,35,'Exit');
-    obj := fl_add_button(FL_TOUCH_BUTTON,330,150,50,30,'Move');
-     fl_set_object_callback(obj,PFL_CALLBACKPTR(@move_cb),longint(but));
-  fl_end_form();
-
-  fl_show_form(form,FL_PLACE_MOUSE,FL_NOBORDER,'ObjPos');
-
-  fl_do_forms();
-
-end.  $Log$
-end.  Revision 1.2  2000-07-13 11:33:14  michael
-end.  + removed logs
-end. 
-}

+ 0 - 127
packages/forms/demo/objreturn.pp

@@ -1,127 +0,0 @@
-{ demo showing the choices when to return object. Note this program,
- * strictly speaking, is illegal in the usage of user data parameter
- * in the callback function.
- }
-program objreturn;
-
-uses forms;
-
-
-{*** Forms and Objects ***}
-type
-TFD_FORM = record
-    form0 : PFL_FORM;
-    obj : array [0..3] of PFL_OBJECT;
-    br : PFL_OBJECT;
-    when : PFL_OBJECT;
-    vdata : pointer;
-    ldata : longint;
-end;
-PFD_FORM = ^TFD_FORM;
-
-var
-fd_form0 : PFD_form;
-
-{ callbacks for form form0 }
-procedure return_cb(ob : PFL_OBJECT; data : longint); export;
-
-begin
-    fl_addto_browser(fd_form0^.br, pchar(data));
-end;
-
-procedure set_when( n : longint);
-
-begin
-    fl_set_object_return(fd_form0^.obj[0], n);
-    fl_set_object_return(fd_form0^.obj[1], n);
-    fl_set_object_return(fd_form0^.obj[2], n);
-    fl_set_object_return(fd_form0^.obj[3], n);
-end;
-
-procedure when_cb(ob : PFL_OBJECT; data : longint); export;
-
-var n : longint;
-
-begin
-    n := fl_get_choice(ob) - 1;
-    if (n >= 0) then
-	set_when(n);
-end;
-
-procedure resetlog_cb(ob : PFL_OBJECT; data : longint);export;
-
-begin
-    fl_clear_browser(fd_form0^.br);
-end;
-
-Function create_form_form0 : PFD_FORM;
-
-Const Preturn : pchar = 'slider returned';
-      Pcounter : pchar = 'counter returned';
-      Pinput : pchar = 'input2 returned';
-      Pinput1 : Pchar =  'input1 returned';
-
-var
-  obj : PFL_OBJECT;
-  fdui : PFD_form;
-  old_bw : longint;
-
-begin  
-  new(fdui);
-  old_bw := fl_get_border_width();
-
-  fl_set_border_width(-2);
-  fdui^.form0 := fl_bgn_form(FL_NO_BOX, 321, 276);
-  obj := fl_add_box(FL_UP_BOX,0,0,321,276,'');
-  obj := fl_add_valslider(FL_HOR_SLIDER,12,55,138,22,'');
-  fdui^.obj[0] := obj;
-    fl_set_object_lalign(obj,FL_ALIGN_BOTTOM or FL_ALIGN_INSIDE);
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@return_cb),longint(Preturn));
-     fl_set_slider_return(obj, FL_RETURN_CHANGED);
-  obj := fl_add_counter(FL_NORMAL_COUNTER,12,85,138,22,'');
-  fdui^.obj[1] := obj;
-    fl_set_object_lalign(obj,FL_ALIGN_BOTTOM or FL_ALIGN_INSIDE);
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@return_cb),longint(PCounter));
-  obj := fl_add_input(FL_NORMAL_INPUT,12,187,138,25,'');
-  fdui^.obj[3] := obj;
-    fl_set_object_lalign(obj,FL_ALIGN_LEFT or FL_ALIGN_INSIDE);
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@return_cb),longint(Pinput));
-  obj := fl_add_input(FL_NORMAL_INPUT,12,150,138,25,'');
-  fdui^.obj[2] := obj;
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@return_cb),longint(Pinput1));
-  obj := fl_add_browser(FL_NORMAL_BROWSER,170,55,140,160,'');
-  fdui^.br := obj;
-  obj := fl_add_choice(FL_NORMAL_CHOICE,80,12,168,27,'');
-  fdui^.when := obj;
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@when_cb),0);
-  obj := fl_add_button(FL_NORMAL_BUTTON,170,239,80,25,'Done');
-  obj := fl_add_button(FL_NORMAL_BUTTON,70,239,80,25,'ResetLog');
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@resetlog_cb),0);
-  fl_end_form();
-  fl_set_border_width(old_bw);
-
-  create_form_form0:= fdui;
-end;
-
-
-begin
-    fl_initialize(@argc, argv, 'FormDemo', nil, 0);
-    fd_form0 := create_form_form0;
-
-    { fill-in form initialization code }
-    set_when(0);
-    fl_set_object_dblbuffer(fd_form0^.br, 1);
-    fl_addto_choice(fd_form0^.when,
-	      'RETURN_END_CHANGED|RETURN_CHANGED|RETURN_END|RETURN_ALWAYS');
-
-    { show the first form }
-    fl_show_form(fd_form0^.form0, FL_PLACE_CENTER, FL_FULLBORDER, 'form0');
-    fl_do_forms();
-end.
-
-
-  $Log$
-  Revision 1.2  2000-07-13 11:33:14  michael
-  + removed logs
- 
-}

+ 0 - 72
packages/forms/demo/porsche.xpm

@@ -1,72 +0,0 @@
-{ XPM }
-const porsche : array[0..68] of pchar = (
-'64 64 4 1 ',
-'  c None 	 m None   s s_slateblue ',
-'. c yellow 	 m white  s s_yellow ',
-'r c red	 m white  s s_red ',
-'b c black 	 m black  s s_black ',
-'                                                                ',
-'                                                                ',
-'        bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb        ',
-'        bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb        ',
-'        bb............................................bb        ',
-'        bb..bbbb..bbbb..bbbb..bbbb..bbbb..b..b..bbbb..bb        ',
-'        bb..b..b..b..b..b..b..b..b..b..b..b..b..b.....bb        ',
-'        bb..b..b..b..b..b..b..b.....b.....b..b..b.....bb        ',
-'        bb..bbbb..b..b..bbb...bbbb..b.....bbbb..bbbb..bb        ',
-'        bb..b.....b..b..b..b.....b..b.....b..b..b.....bb        ',
-'        bb..b.....b..b..b..b..b..b..b..b..b..b..b.....bb        ',
-'        bb..b.....bbbb..b..b..bbbb..bbbb..b..b..bbbb..bb        ',
-'        bb............................................bb        ',
-'        bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb        ',
-'        bb.....................bbbbbbbbbbbbbbbbbbbbbbbbb        ',
-'        bb......b...b...bb.....bbbbbbbbbbbbbbbbbbbbbbbbb        ',
-'        bb.....b...b...b....b..bbbbbbbbbbbbbbbbbbbbbbbbb        ',
-'        bb....bb..bb.bbbbbbb...bbbbbbbbbbbbbbbbbbbbbbbbb        ',
-'        bb...bbbbbbbb......bb..bbrrrrrrrrrrrrrrrrrrrrrbb        ',
-'        bb..bbbb...............bbrrrrrrrrrrrrrrrrrrrrrbb        ',
-'        bb.bbb.................bbrrrrrrrrrrrrrrrrrrrrrbb        ',
-'        bb..........b..b.......bbrrrrrrrrrrrrrrrrrrrrrbb        ',
-'        bb.....b...b..b........bbrrrrrrrrrrrrrrrrrrrrrbb        ',
-'        bb....b...b..b..bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb        ',
-'        bb....b.bbbbbbbbb..............bbbbbbbbbbbbbbbbb        ',
-'        bb...bbbb.......bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb        ',
-'        bb..bbb.........b..............bbbbbbbbbbbbbbbbb        ',
-'        bb.bbb..........b...bbb........bbbbbbbbbbbbbbbbb        ',
-'        bb.........b..b.b..bbbbb.......bbbbbbbbbbbbbbbbb        ',
-'        bb.....b..b..b..b..b.bbb.....b.brrrrrrrrrrrrrrbb        ',
-'        bb....b..b..b..bb....bbb....bb.brrrrrrrrrrrrrrbb        ',
-'        bb...bb.bbbbbbb.b....bbb....bb.brrrrrrrrrrrrrrbb        ',
-'        bb..bbbbb......bb...bbbbb...b..brrrrrrrrrrrrrrbb        ',
-'        bb.bbb..........b.bbbbbbbbbbb..brrrrrrrrrrrrrrbb        ',
-'        bb..............b.b.bbbbbbbbb..brrrrrrrrrrrrrrbb        ',
-'        bbbbbbbbbbbbbbbbb.b.b....bbbb..bbbbbbbbbbbbbbbbb        ',
-'        bbbbbbbbbbbbbbbbb...b.....b.b..b..............bb        ',
-'        bbbbbbbbbbbbbbbbb........bb.bb.b...b..b.......bb        ',
-'         bbbbbbbbbbbbbbbb........b..b..b..b..b...b...bb         ',
-'         bbbbbbbbbbbbbbbb.......b..b...b.b..b...b....bb         ',
-'         bbbbbbbbbbbbbbbbb............b.bbbbbbbbbb...bb         ',
-'          bbrrrrrrrrrrrrrrb..........bbbb........bb.bb          ',
-'          bbrrrrrrrrrrrrrrrb........bbbb............bb          ',
-'           bbrrrrrrrrrrrrrrrbbbbbbbb.......b..b....bb           ',
-'           bbrrrrrrrrrrrrrrrrrrbb.....b...b..b..b..bb           ',
-'            bbrrrrrrrrrrrrrrrrrbb....b...b..b..b..bb            ',
-'            bbrrrrrrrrrrrrrrrrrbb...bb.bbbbbbbb...bb            ',
-'             bbbbbbbbbbbbbbbbbbbb...bbbb......bb.bb             ',
-'              bbbbbbbbbbbbbbbbbbb..bbb...........b              ',
-'              bbbbbbbbbbbbbbbbbbb.bbb...........bb              ',
-'               bbbbbbbbbbbbbbbbbb..............bb               ',
-'                bbbbbbbbbbbbbbbbb...b.b.b.....bb                ',
-'                 bbbbbbbbbbbbbbbb..b.b.b..b..bb                 ',
-'                  bbrrrrrrrrrrrbb..bbbbbbb..bb                  ',
-'                   bbrrrrrrrrrrbb.bbb....b.bb                   ',
-'                    bbrrrrrrrrrbb.bb......bb                    ',
-'                     bbbrrrrrrrbb.......bbb                     ',
-'                      bbbbrrrrrbb.....bbbb                      ',
-'                        bbbbrrrbb...bbbb                        ',
-'                          bbbbrbb.bbbb                          ',
-'                            bbbbbbbb                            ',
-'                              bbbb                              ',
-'                               bb                               ',
-'                                                                '
-);

+ 0 - 61
packages/forms/demo/positioner.pp

@@ -1,61 +0,0 @@
-{ This demo shows the use of a positioner.  }
-program positioner;
-
-uses forms;
-
-var
- xval, yval : PFL_Object;
-
-{ callback routine }
-
-Procedure Do_position (ob :PFL_OBJECT; q : longint);
-
-var
-    st : string [30];
-    
-begin
-    
-    str(fl_get_positioner_xvalue(ob),st);st:=st+#0;
-    fl_set_object_label(xval,@st[1]);
-    str(fl_get_positioner_yvalue(ob),st);st:=st+#0;
-    fl_set_object_label(yval,@st[1]);
-end;
-
-procedure positioner_cb(ob :PFL_OBJECT; q : longint);export;
-
-begin
-  Do_Position (ob,q);
-end;
-
-var 
-  form : PFL_FORM;
-  thepos, button : PFL_OBJECT;
-
-
-begin
-
-  fl_initialize(@argc, argv, 'FormDemo', nil, 0);
-
-  form := fl_bgn_form(FL_UP_BOX,400,280);
-     thepos := fl_add_positioner(FL_NORMAL_POSITIONER,40,40,200,200,'');
-     fl_set_positioner_xbounds(thepos,0,1);
-     fl_set_positioner_ybounds(thepos,0,1);
-     fl_set_object_callback(thepos,PFL_CALLBACKPTR(@positioner_cb),0);
-     xval := fl_add_box(FL_DOWN_BOX,270,40,100,30,'');
-     yval := fl_add_box(FL_DOWN_BOX,270,90,100,30,'');
-     fl_set_object_color(xval,FL_COL1,FL_COL1);
-     fl_set_object_color(yval,FL_COL1,FL_COL1);
-     button := fl_add_button(FL_NORMAL_BUTTON,270,210,100,30,'Exit');
-  fl_end_form();
-
-  fl_show_form(form,FL_PLACE_CENTER,FL_NOBORDER,NiL);
-  Do_position(thepos,0);
-  fl_do_forms;
-  fl_hide_form(form);
-end.
-
-  $Log$
-  Revision 1.2  2000-07-13 11:33:14  michael
-  + removed logs
- 
-}

+ 0 - 241
packages/forms/demo/pup.pp

@@ -1,241 +0,0 @@
-{ Demo: complete pop-ups. 
- * test font/cursor change
- * test attaching pup to menu 
- }
-program popup;
-
-uses forms,strings;
-
-var 
-pup : PFL_FORM;
-done, pret, b1, b2, b3, menu : PFL_OBJECT;
-
-var
-    aa : TFL_IOPT;
-    mask : cardinal;
-     
-
-const 
-   subm : longint = -1; 
-    m : longint = -1;
-    ssm : longint = 0; 
-    n1 : longint = -1;
-    n2 : longint = -1;
-    n : longint = 0;
-    
-{ post-handler }
-function  post(ob : PFL_OBJECT; ev : Longint; mx,y : TFL_Coord; key  : longint; xev : pointer) : Longint;
-
-begin
-    if (n1 = -1) then
-     begin    
-      n1 := fl_defpup(FL_ObjWin(ob),'line1|line2');
-      fl_setpup_shadow(n1,0);
-      fl_setpup_bw(n1,0);
-      fl_setpup_pad(n1,3,0);
-
-      n2 := fl_defpup(FL_ObjWin(ob),'button1|button2');
-      fl_setpup_shadow(n2,0);
-      fl_setpup_bw(n2,-1);
-      fl_setpup_pad(n2,3,0);
-    end;
-
-    if (ev = FL_ENTER) then
-      begin
-       if (ob=b3) then
-         fl_show_oneliner('button3',ob^.form^.x+ob^.x,
-                         ob^.form^.y+ob^.y + ob^.h + 5)
-       else
-        begin
-          fl_setpup_position(ob^.form^.x+ob^.x, ob^.form^.y+ob^.y+ob^.h + 5);
-          if ob=b1 then
-            fl_showpup(n1)
-          else
-            fl_showpup(n2);
-        end
-      end
-    else if(ev <> FL_MOTION) then
-      begin
-       if (ob=b3) then
-         fl_hide_oneliner
-       else
-         if ob=b1 then
-           fl_hidepup(n1)
-         else 
-           fl_hidepup(n2);
-      end;
-end;
-
-
-procedure show_return_val(i :  longint);
-
-var
-    buf : string[128];
-
-begin
-      str(i,buf);
-      buf:= 'Returned '+buf;
-     if i>0 then
-       buf:=buf+'('++strpas(fl_getpup_text(m,i))+')'#0;
-
-    fl_set_object_label(pret, @buf[1]);
-end;
-
-function ssm_cb(a : longint) : longint;
-begin
-   show_return_val(a);
-   ssm_cb:=a;
-end;
-
-procedure do_pup(ob : PFL_OBJECT; q : longint);
-
-begin
-   if (subm = -1) then
-   begin
-      ssm  := fl_newpup(FL_ObjWin(ob));
-      subm := fl_newpup(FL_ObjWin(ob));
-      m    := fl_newpup(FL_ObjWin(ob));
-      
-      { Problem, variable nr. of arguments in c code !!!!}
-      { fl_addtopup(ssm,'SubSubM%F%t',ssm_cb); }
-      fl_addtopup(ssm,'SSMItem20%x20%R1');
-      fl_addtopup(ssm,'SSMItem21%x21%r1');
-      fl_addtopup(ssm,'SSMItem22%x22%r1%l');
-      fl_addtopup(ssm,'SSMitem30%x30%R2');
-      fl_addtopup(ssm,'SSMItem31%x31%r2');
-      fl_addtopup(ssm,'SSMItem32%x32%r2');
-
-      fl_addtopup(subm,'SubMenu%t');
-      fl_addtopup(subm,'SMItemA\tAlt-A%x10%h','#a'); 
-      fl_addtopup(subm,'SMItemB\tAlt-B%x11%h','#b');
-      fl_addtopup(subm,'SMItemC\tAlt-C%x12%h','#c');
-      fl_addtopup(subm,'SMItemD\tAlt-F5%x13%h%m','#&5',ssm);
-      fl_addtopup(subm,'SMItemE\tAlt-E%x14','#E');
-
-      fl_setpup_mode(subm, 14, FL_PUP_GREY);
-
-      fl_addtopup(m,'PopUP%t');
-      fl_addtopup(m,'MenuItem1%h','1#1');
-
-      fl_addtopup(m,'MenuItem2%h','2#2');
-      fl_setpup_submenu(m, 2, subm);
-      fl_addtopup(m,'MenuItem3%h','3#3');
-      fl_addtopup(m,'MenuItem4%h','4#4');
-   end;
-
-
-   if (fl_get_button_numb(ob) >= FL_SHORTCUT) then
-      fl_setpup_position(ob^.form^.x + ob^.x, 
-                      ob^.form^.y + ob^.y + ob^.h); 
-
-   show_return_val(fl_dopup(m));
-
-   { test if changing size/style ok }
-   n := not(n);
-   if n<>0 then
-    begin
-    fl_setpup_fontsize(14);
-    fl_setpup_fontstyle(FL_TIMES_STYLE);
-    fl_setpup_cursor(m, XC_hand2);
-    end
-   else
-     begin
-     fl_setpup_fontsize(12);
-     fl_setpup_fontstyle(FL_BOLDITALIC_STYLE);
-     fl_setpup_cursor(m,XC_sb_right_arrow);
-     end;
-end;
-
-procedure init_menu;
-var
-    mm,smm : longint;
-
-begin
-    mm := fl_newpup(fl_default_win);
-    fl_setpup_bw(mm, -2);
-    fl_setpup_shadow(mm, 0);
-    smm := fl_newpup(0);
-    fl_setpup_shadow(smm, 0);
-
-    fl_addtopup(mm,'MenuItem1|MenuItem2%m|MenuItem3',smm);
-    fl_addtopup(smm,'SubItem1%x11|SubItem2%x12|SubItem3%x13');
-
-
-    { attach pup to menu }
-    
-    fl_set_menu_popup(menu, mm);
-end;
-
-
-procedure do_menu(ob  : PFL_OBJECT; data : longint);
-var
-    buf : string[128];
-    
-begin
-    str(fl_get_menu(ob),buf);
-    if (fl_get_menu(ob) >= 0) then
-       buf:=buf+strpas(fl_get_menu_text(ob));
-    buf:=buf+#0;
-
-    fl_set_object_label(pret, @buf[1]);
-end;
-
-procdure done_cb(ob : PFL_OBJECT; data : longint);
-
-begin
-  halt(0)
-end;
-
-procedure create_form_pup;
-
-var
-  obj : PFL_OBJECT ;
-
-begin
-  if (pup<>nil) then
-     exit;
-  pup := fl_bgn_form(FL_UP_BOX,260,210);
-  obj := fl_add_button(FL_NORMAL_BUTTON,150,150,90,35,'Done');
-    fl_set_object_callback(obj,PFL_CALLBACKPTR(@done_cb), 0);
-  done := obj;
-  obj := fl_add_button(FL_MENU_BUTTON,30,90,100,30,'PopUp');
-    fl_set_button_shortcut(obj,'Pp#p',1);
-    fl_set_object_callback(obj, PFL_CALLBACKPTR(@do_pup), 0);
-  obj := fl_add_menu(FL_PULLDOWN_MENU,160,95,60,25,'Menu');
-    fl_set_object_callback(obj, PFL_CALLBACKPTR(@do_menu), 0);
-  menu := obj;
-  obj := fl_add_text(FL_NORMAL_TEXT,20,60,220,30,'');
-    fl_set_object_lalign(obj,FL_ALIGN_CENTER);
-  pret := obj; 
-  b1 := fl_add_button(FL_NORMAL_BUTTON, 20, 10, 60, 30,'Button1');
-  b2 := fl_add_button(FL_NORMAL_BUTTON, 90, 10, 60, 30,'Button2');
-  b3 := fl_add_button(FL_NORMAL_BUTTON, 160, 10, 60, 30,'Button3');
-  fl_end_form();
-end;
-
-
-begin
-    mask := FL_PDVisual;
-    aa.vclass := FL_DefaultVisual;
-    fl_set_defaults(mask, @aa);
-
-    fl_initialize(@argc, argv, 'FormDemo', nil, 0);
-
-    create_form_pup();
-
-    { initialize }
-
-    fl_set_object_posthandler(b1, @post);
-    fl_set_object_posthandler(b2, @post);
-    fl_set_object_posthandler(b3, @post);
-
-    fl_show_form(pup, FL_PLACE_MOUSE, FL_TRANSIENT,'PupDemo');
-    init_menu;
-
-    fl_do_forms;
-end.
-  $Log$
-  Revision 1.2  2000-07-13 11:33:14  michael
-  + removed logs
- 
-}

+ 0 - 50
packages/forms/demo/pushbutton.pp

@@ -1,50 +0,0 @@
-Program pushButtons;
-{ A demo that shows the use of push buttons.  }
-
-uses forms;
-
-var form : PFL_FORM;
-    Abox : array[0..8] of PFL_OBJECT;
-
-procedure push_cb( ob : PFL_OBJECT; n : longint);export;
-
-begin
-   if (fl_get_button(ob)<>0) then
-      fl_show_object(abox[n])
-   else 
-      fl_hide_object(abox[n]);
-end;
-
-
-Procedure makeform;
-
-Var i : Integer;
-    obj : PFL_OBJECT;
-    
-begin
-  form := fl_bgn_form(FL_UP_BOX,400,400);
-  for i:=0 to 7 do
-    begin
-    obj := fl_add_button(FL_PUSH_BUTTON,40,310-40*i,80,30,'');
-    fl_set_object_color(obj,FL_BLACK+i+1,FL_BLACK+i+1);
-      fl_set_object_callback(obj,PFL_CALLBACKPTR(@push_cb),i);
-    abox[i] := fl_add_box(FL_DOWN_BOX,150+30*i,40,25,320,'');
-      fl_set_object_color(abox[i],FL_BLACK+i+1,FL_BLACK+i+1);
-      fl_hide_object(abox[i]);
-    end;
-  fl_add_button(FL_NORMAL_BUTTON,40,350,80,30,'Exit');
-  fl_end_form;
-end;
-
-Begin
-  fl_initialize(@argc, argv, 'FormDemo', nil,0);
-  makeform;
-  fl_show_form(form,FL_PLACE_CENTER,FL_NOBORDER,'Push Buttons');
-  { fl_do_forms will return only when Exit is pressed }
-  fl_do_forms;
-end.
-  $Log$
-  Revision 1.2  2000-07-13 11:33:14  michael
-  + removed logs
- 
-}

+ 0 - 22
packages/forms/demo/pushme.pp

@@ -1,22 +0,0 @@
-Program pushme;
-
-uses forms;
-
-var simpleform : PFL_FORM;
-{    formname,buttonname : string;
-}
-begin
-  fl_initialize(@argc, argv, 'FormDemo', nil, 0);
-  simpleform := fl_bgn_form(FL_UP_BOX,230,160);
-   fl_add_button(FL_NORMAL_BUTTON,40,50,150,60,'Pushme');
-  fl_end_form;
-  fl_show_form(simpleform, FL_PLACE_MOUSE, FL_NOBORDER, 'Push me');
-  fl_do_forms;
-  fl_hide_form(simpleform);
-end.
-
-  $Log$
-  Revision 1.2  2000-07-13 11:33:14  michael
-  + removed logs
- 
-}

+ 0 - 34
packages/forms/demo/secretinput.pp

@@ -1,34 +0,0 @@
-program secretinput;
-{ Demo showing secret input fields }
-
-uses forms,strings;
-
-var form : PFL_FORM;
-   but, password1, password2, info, ret : PFL_OBJECT;
-   str : string;
-
-begin
-
-  fl_initialize(@argc, argv, 'FormDemo', nil, 0);
-
-  form := fl_bgn_form( FL_FLAT_BOX,400,300);
-    password1 := fl_add_input(FL_SECRET_INPUT,140,40,160,40,'Password 1:');
-    password2 := fl_add_input(FL_SECRET_INPUT,140,100,160,40,'Password 2:');
-    info := fl_add_box(FL_SHADOW_BOX,20,160,360,40,'');
-    but := fl_add_button( FL_NORMAL_BUTTON,280,240,100,40,'Quit');
-  fl_end_form;
-
-  fl_show_form(form, FL_PLACE_MOUSE,FL_NOBORDER,nil);
-  repeat
-    ret := fl_do_forms;
-    str:='Password 1 is: '+strpas(fl_get_input(password1));
-    str:=str+' , Password 2 is: '+strpas(fl_get_input(password2))+#0;
-    fl_set_object_label(info,@str[1]);
-  until (ret = but);
-  fl_hide_form(form);
-end. 
-  $Log$
-  Revision 1.2  2000-07-13 11:33:14  michael
-  + removed logs
- 
-}

+ 0 - 80
packages/forms/demo/sliderall.pp

@@ -1,80 +0,0 @@
-{ This demo shows the different types of sliders }
-
-program sliderall;
-
-uses forms;
-
-var
-form : PFL_FORM;
-exitobj : PFL_OBJECT;
-
-procedure create_form_form;
-var 
-  obj : PFL_OBJECT;
-begin
-  form := fl_bgn_form(FL_NO_BOX,780,320);
-  obj := fl_add_box(FL_UP_BOX,0,0,780,320,'');
-    fl_set_object_color(obj,FL_PALEGREEN,FL_COL1);
-  obj := fl_add_box(FL_SHADOW_BOX,20,30,360,270,'SLIDER');
-    fl_set_object_color(obj,FL_SLATEBLUE,47);
-    fl_set_object_lalign(obj,FL_ALIGN_TOP);
-    fl_set_object_lstyle(obj,FL_BOLD_STYLE);
-  obj := fl_add_box(FL_SHADOW_BOX,390,30,370,270,'VALSLIDER');
-    fl_set_object_color(obj,FL_SLATEBLUE,FL_COL1);
-    fl_set_object_lalign(obj,FL_ALIGN_TOP);
-    fl_set_object_lstyle(obj,FL_BOLD_STYLE);
-  obj := fl_add_slider(FL_VERT_SLIDER,30,50,40,220,'vert');
-    fl_set_object_color(obj,FL_INDIANRED,FL_PALEGREEN);
-  obj := fl_add_slider(FL_VERT_FILL_SLIDER,80,50,40,220,'vert_fill');
-    fl_set_object_color(obj,FL_INDIANRED,FL_PALEGREEN);
-  obj := fl_add_slider(FL_HOR_SLIDER,180,50,190,40,'hor');
-    fl_set_object_color(obj,FL_INDIANRED,FL_PALEGREEN);
-  obj := fl_add_slider(FL_HOR_FILL_SLIDER,180,110,190,40,'hor_fill');
-    fl_set_object_color(obj,FL_INDIANRED,FL_PALEGREEN);
-  obj := fl_add_valslider(FL_VERT_NICE_SLIDER,610,50,30,220,'vert_nice');
-    fl_set_object_boxtype(obj,FL_FLAT_BOX);
-    fl_set_object_color(obj,FL_SLATEBLUE,FL_INDIANRED);
-  obj := fl_add_valslider(FL_VERT_FILL_SLIDER,660,50,40,220,'vert_fill');
-    fl_set_object_color(obj,FL_INDIANRED,FL_PALEGREEN);
-
-  obj := fl_add_valslider(FL_HOR_SLIDER,400,50,190,40,'hor');
-    fl_set_object_color(obj,FL_INDIANRED,FL_PALEGREEN);
-  obj := fl_add_valslider(FL_HOR_FILL_SLIDER,400,110,190,40,'hor_fill');
-    fl_set_object_color(obj,FL_INDIANRED,FL_PALEGREEN);
-  obj := fl_add_valslider(FL_HOR_BROWSER_SLIDER,400,220,190,25,'hor_browser');
-  obj := fl_add_button(FL_NORMAL_BUTTON,450,260,100,30,'Exit');
-    fl_set_object_color(obj,FL_INDIANRED,FL_RED);
-  exitobj:=obj;
-  obj := fl_add_slider(FL_VERT_NICE_SLIDER,130,50,30,220,'vert_nice');
-    fl_set_object_boxtype(obj,FL_FLAT_BOX);
-    fl_set_object_color(obj,FL_SLATEBLUE,FL_INDIANRED);
-  obj := fl_add_slider(FL_HOR_NICE_SLIDER,180,170,190,30,'hor_nice');
-    fl_set_object_boxtype(obj,FL_FLAT_BOX);
-    fl_set_object_color(obj,FL_SLATEBLUE,FL_INDIANRED);
-  obj := fl_add_slider(FL_HOR_BROWSER_SLIDER,180,220,190,25,'hor_browser');
-  obj := fl_add_valslider(FL_HOR_NICE_SLIDER,400,170,190,30,'hor_nice');
-    fl_set_object_boxtype(obj,FL_FLAT_BOX);
-    fl_set_object_color(obj,FL_SLATEBLUE,FL_INDIANRED);
-  obj := fl_add_valslider(FL_VERT_SLIDER,710,50,40,220,'vert');
-    fl_set_object_color(obj,FL_INDIANRED,FL_PALEGREEN);
-  fl_end_form;
-end;
-
-
-var obj : PFL_OBJECT;
-
-begin
-  fl_initialize(@argc, argv, 'FormDemo', nil, 0);
-  create_form_form;
-
-  fl_show_form(form,FL_PLACE_CENTER,FL_NOBORDER,'All Sliders');
-  repeat
-   obj := fl_do_forms; 
-  until  (obj = exitobj);
-  fl_hide_form(form);
-end.
-  $Log$
-  Revision 1.2  2000-07-13 11:33:15  michael
-  + removed logs
- 
-}

+ 0 - 68
packages/forms/demo/srs.xbm

@@ -1,68 +0,0 @@
-Const 
-sorceress_width = 75;
-sorceress_height = 75;
-sorceress_bits : array[1..750] of byte =
-(
-  $fc, $7e, $40, $20, $90, $00, $07, $80, $23, $00, $00, $c6,
-  $c1, $41, $98, $b8, $01, $07, $66, $00, $15, $9f, $03, $47,
-  $8c, $c6, $dc, $7b, $cc, $00, $b0, $71, $0e, $4d, $06, $66,
-  $73, $8e, $8f, $01, $18, $c4, $39, $4b, $02, $23, $0c, $04,
-  $1e, $03, $0c, $08, $c7, $ef, $08, $30, $06, $07, $1c, $02,
-  $06, $30, $18, $ae, $c8, $98, $3f, $78, $20, $06, $02, $20,
-  $60, $a0, $c4, $1d, $c0, $ff, $41, $04, $fa, $63, $80, $a1,
-  $a4, $3d, $00, $84, $bf, $04, $0f, $06, $fc, $a1, $34, $6b,
-  $01, $1c, $c9, $05, $06, $c7, $06, $be, $11, $1e, $43, $30,
-  $91, $05, $c3, $61, $02, $30, $1b, $30, $cc, $20, $11, $00,
-  $c1, $3c, $03, $20, $0a, $00, $e8, $60, $21, $00, $61, $1b,
-  $c1, $63, $08, $f0, $c6, $c7, $21, $03, $f8, $08, $e1, $cf,
-  $0a, $fc, $4d, $99, $43, $07, $3c, $0c, $f1, $9f, $0b, $fc,
-  $5b, $81, $47, $02, $16, $04, $31, $1c, $0b, $1f, $17, $89,
-  $4d, $06, $1a, $04, $31, $38, $02, $07, $56, $89, $49, $04,
-  $0b, $04, $b1, $72, $82, $a1, $54, $9a, $49, $04, $1d, $66,
-  $50, $e7, $c2, $f0, $54, $9a, $58, $04, $0d, $62, $c1, $1f,
-  $44, $fc, $51, $90, $90, $04, $86, $63, $e0, $74, $04, $ef,
-  $31, $1a, $91, $00, $02, $e2, $c1, $fd, $84, $f9, $30, $0a,
-  $91, $00, $82, $a9, $c0, $b9, $84, $f9, $31, $16, $81, $00,
-  $42, $a9, $db, $7f, $0c, $ff, $1c, $16, $11, $00, $02, $28,
-  $0b, $07, $08, $60, $1c, $02, $91, $00, $46, $29, $0e, $00,
-  $00, $00, $10, $16, $11, $02, $06, $29, $04, $00, $00, $00,
-  $10, $16, $91, $06, $a6, $2a, $04, $00, $00, $00, $18, $24,
-  $91, $04, $86, $2a, $04, $00, $00, $00, $18, $27, $93, $04,
-  $96, $4a, $04, $00, $00, $00, $04, $02, $91, $04, $86, $4a,
-  $0c, $00, $00, $00, $1e, $23, $93, $04, $56, $88, $08, $00,
-  $00, $00, $90, $21, $93, $04, $52, $0a, $09, $80, $01, $00,
-  $d0, $21, $95, $04, $57, $0a, $0f, $80, $27, $00, $d8, $20,
-  $9d, $04, $5d, $08, $1c, $80, $67, $00, $e4, $01, $85, $04,
-  $79, $8a, $3f, $00, $00, $00, $f4, $11, $85, $06, $39, $08,
-  $7d, $00, $00, $18, $b7, $10, $81, $03, $29, $12, $cb, $00,
-  $7e, $30, $28, $00, $85, $03, $29, $10, $be, $81, $ff, $27,
-  $0c, $10, $85, $03, $29, $32, $fa, $c1, $ff, $27, $94, $11,
-  $85, $03, $28, $20, $6c, $e1, $ff, $07, $0c, $01, $85, $01,
-  $28, $62, $5c, $e3, $8f, $03, $4e, $91, $80, $05, $39, $40,
-  $f4, $c2, $ff, $00, $9f, $91, $84, $05, $31, $c6, $e8, $07,
-  $7f, $80, $cd, $00, $c4, $04, $31, $06, $c9, $0e, $00, $c0,
-  $48, $88, $e0, $04, $79, $04, $db, $12, $00, $30, $0c, $c8,
-  $e4, $04, $6d, $06, $b6, $23, $00, $18, $1c, $c0, $84, $04,
-  $25, $0c, $ff, $c2, $00, $4e, $06, $b0, $80, $04, $3f, $8a,
-  $b3, $83, $ff, $c3, $03, $91, $84, $04, $2e, $d8, $0f, $3f,
-  $00, $00, $5f, $83, $84, $04, $2a, $70, $fd, $7f, $00, $00,
-  $c8, $c0, $84, $04, $4b, $e2, $2f, $01, $00, $08, $58, $60,
-  $80, $04, $5b, $82, $ff, $01, $00, $08, $d0, $a0, $84, $04,
-  $72, $80, $e5, $00, $00, $08, $d2, $20, $44, $04, $ca, $02,
-  $ff, $00, $00, $08, $de, $a0, $44, $04, $82, $02, $6d, $00,
-  $00, $08, $f6, $b0, $40, $02, $82, $07, $3f, $00, $00, $08,
-  $44, $58, $44, $02, $93, $3f, $1f, $00, $00, $30, $88, $4f,
-  $44, $03, $83, $23, $3e, $00, $00, $00, $18, $60, $e0, $07,
-  $e3, $0f, $fe, $00, $00, $00, $70, $70, $e4, $07, $c7, $1b,
-  $fe, $01, $00, $00, $e0, $3c, $e4, $07, $c7, $e3, $fe, $1f,
-  $00, $00, $ff, $1f, $fc, $07, $c7, $03, $f8, $33, $00, $c0,
-  $f0, $07, $ff, $07, $87, $02, $fc, $43, $00, $60, $f0, $ff,
-  $ff, $07, $8f, $06, $be, $87, $00, $30, $f8, $ff, $ff, $07,
-  $8f, $14, $9c, $8f, $00, $00, $fc, $ff, $ff, $07, $9f, $8d,
-  $8a, $0f, $00, $00, $fe, $ff, $ff, $07, $bf, $0b, $80, $1f,
-  $00, $00, $ff, $ff, $ff, $07, $7f, $3a, $80, $3f, $00, $80,
-  $ff, $ff, $ff, $07, $ff, $20, $c0, $3f, $00, $80, $ff, $ff,
-  $ff, $07, $ff, $01, $e0, $7f, $00, $c0, $ff, $ff, $ff, $07,
-  $ff, $0f, $f8, $ff, $40, $e0, $ff, $ff, $ff, $07, $ff, $ff,
-  $ff, $ff, $40, $f0, $ff, $ff, $ff, $07, $ff, $ff, $ff, $ff,
-  $41, $f0, $ff, $ff, $ff, $07);

+ 0 - 59
packages/forms/demo/touchbutton.pp

@@ -1,59 +0,0 @@
-{  This demo shows the use of a touch buttons. }
-program touchbutton;
-
-uses strings,forms;
-
-var form : PFL_FORM;
-    valobj,obj : PFL_OBJECT;
-    value : LongInt;
-
-
-Procedure show_val(ob : PFL_OBJECT;delta : Longint);export;
-
-var     st : string[32];
-
-begin
-   value:=value+delta;
-   str(value,st);
-   st:=st+#0;
-   fl_set_object_label(valobj, @st[1]);
-end;
-
-
-begin
-  fl_initialize(@argc, argv, 'FormDemo', nil, 0);
-  form := fl_bgn_form(FL_UP_BOX,360,140);
-    obj := fl_add_button(FL_TOUCH_BUTTON,50,30,40,30,'@<<');
-     fl_set_object_boxtype(obj,FL_FRAME_BOX);
-     fl_set_object_color(obj, FL_COL1, FL_INDIANRED); 
-     fl_set_object_callback(obj, PFL_CALLBACKPTR(@show_val),-5);
-     fl_set_button_shortcut(obj,'1'#0, 0);
-    obj := fl_add_button(FL_TOUCH_BUTTON,90,30,40,30,'@<');
-     fl_set_object_boxtype(obj,FL_FRAME_BOX);
-     fl_set_object_color(obj, FL_COL1, FL_INDIANRED); 
-     fl_set_object_callback(obj, PFL_CALLBACKPTR(@show_val),-1);
-     fl_set_button_shortcut(obj,'2'#0, 0);
-    obj := fl_add_box(FL_BORDER_BOX,130,30,100,30,'');
-    valobj:=obj;
-     fl_set_object_color(obj,FL_LEFT_BCOL,FL_LEFT_BCOL);
-    obj := fl_add_button(FL_TOUCH_BUTTON,230,30,40,30,'@>');
-     fl_set_object_boxtype(obj,FL_FRAME_BOX);
-     fl_set_object_color(obj, FL_COL1, FL_INDIANRED); 
-     fl_set_object_callback(obj, PFL_CALLBACKPTR(@show_val),1);
-     fl_set_button_shortcut(obj,'3'#0, 0);
-    obj := fl_add_button(FL_TOUCH_BUTTON,270,30,40,30,'@>>');
-     fl_set_object_boxtype(obj,FL_FRAME_BOX);
-     fl_set_object_callback(obj, PFL_CALLBACKPTR(@show_val),5);
-     fl_set_object_color(obj, FL_COL1, FL_INDIANRED); 
-     fl_set_button_shortcut(obj,'4'#0, 0);
-    obj := fl_add_button(FL_NORMAL_BUTTON,220,90,100,30,'Exit');
-  fl_end_form;
-  fl_show_form(form,FL_PLACE_CENTER,FL_NOBORDER,'Touch Buttons');
-  fl_do_forms();
-end.
-
-  $Log$
-  Revision 1.2  2000-07-13 11:33:15  michael
-  + removed logs
- 
-}

+ 0 - 76
packages/forms/demo/xyplotover.pp

@@ -1,76 +0,0 @@
-{ Demo showing the use of xyplot overlay. }
-program xyplotover;
-
-uses forms;
-
-{*** Forms and Objects ***}
-
-type
-TFD_fff = record
-	fff : PFL_FORM;
-	xyplot : PFL_OBJECT;
-	vdata : pointer;
-	ldata : longint;
-end;
-PFD_FFF = ^TFD_fff;
-
-function create_form_fff : PFD_fff;
-
-var
-  obj : PFL_OBJECT;
-  fdui : PFD_fff;
-
-begin
-  new(fdui);
-  fdui^.fff := fl_bgn_form(FL_NO_BOX, 370, 310);
-  obj := fl_add_box(FL_UP_BOX,0,0,370,310,'');
-  obj  := fl_add_xyplot(FL_IMPULSE_XYPLOT,10,20,350,260,'');
-  fdui^.xyplot := obj;
-    fl_set_object_lalign(obj,(FL_ALIGN_BOTTOM or FL_ALIGN_INSIDE));
-  obj := fl_add_button(FL_HIDDEN_BUTTON,10,10,350,290,'');
-  fl_end_form;
-
-  create_form_fff:=fdui;
-end;
-
-
-var
-  i : integer;
-  xx,yy : array[0..69] of real;
-  fd_fff : PFD_fff;
-  
-begin
-   fl_initialize(@argc, argv, 'FormDemo', nil, 0);
-
-   { fill-in form initialization code }
-   for i := 0 to 69 do
-     begin
-        xx[i] := 3.1415 * i / 8.0;
-        yy[i] := sin(2 * xx[i]) + cos(xx[i]);
-     end;
-
-   fd_fff := create_form_fff;
-
-   fl_set_xyplot_data(fd_fff^.xyplot, xx, yy, 35, '', '','');
-   fl_add_xyplot_overlay(fd_fff^.xyplot, 1, xx, yy, 70, FL_BLUE);
-   fl_set_xyplot_overlay_type(fd_fff^.xyplot, 1, FL_NORMAL_XYPLOT);
-   fl_set_xyplot_xbounds(fd_fff^.xyplot, 0, 3.142 * 69/8.0);
-   fl_set_xyplot_interpolate(fd_fff^.xyplot, 1, 2, 0.1);
-   { add inset text }
-   fl_add_xyplot_text(fd_fff^.xyplot, 2.2, 1.2, 'Original: Impulse',
-                      FL_ALIGN_LEFT , FL_BLACK);
-   fl_add_xyplot_text(fd_fff^.xyplot, 2.2, 1.0, 'Overlay: Solid', 
-                      FL_ALIGN_LEFT, FL_BLUE);
-
-
-   { show the first form }
-   fl_show_form(fd_fff^.fff,FL_PLACE_MOUSE,FL_TRANSIENT,'XYPlot Overlay');
-   fl_do_forms();
-end.
-
-
-  $Log$
-  Revision 1.2  2000-07-13 11:33:15  michael
-  + removed logs
- 
-}

+ 0 - 30
packages/forms/demo/yesno.pp

@@ -1,30 +0,0 @@
-Program yesno;
-{
-  A box with two buttons and a string. Simple boxes like this
-   are very usefull for asking questions
-}
-
-Uses forms;
-
-var
-    form   : PFL_FORM;
-    yes,no : PFL_OBJECT;
-
-begin
-  fl_initialize(@argc, argv, 'FormDemo', nil, 0);
-  form := fl_bgn_form(FL_UP_BOX,320,120);
-    fl_add_box(FL_NO_BOX,160,40,0,0,'Do you want to quit ?');
-    yes := fl_add_button(FL_NORMAL_BUTTON,40,70,80,30,'Yes');
-    no  := fl_add_button(FL_NORMAL_BUTTON,200,70,80,30,'No');
-  fl_end_form;
-  fl_show_form(form,FL_PLACE_MOUSE,FL_TRANSIENT,'Question : ');
-  while (fl_do_forms <> yes) do;
-  fl_hide_form(form);
-end.
-
-
-  $Log$
-  Revision 1.2  2000-07-13 11:33:15  michael
-  + removed logs
- 
-}

+ 0 - 1136
packages/forms/fd2pascal.pp

@@ -1,1136 +0,0 @@
-Program fd2pascal;
-
-{ ---------------------------------------------------------------------------
-    Program to convert forms fdesign file to pascal code
-    Copyright (C) 1997  Michael Van Canneyt
-
-    This program is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 1, or (at your option)
-    any later version.
-
-    This program is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program; if not, write to the Free Software
-    Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-  --------------------------------------------------------------------------- }
-
-{ $Id$ }
-
-uses
-{$ifdef ver1_0}
-  Linux
-{$else}
-  Unix
-{$endif}
-  ;
-
-Const RevString = '$Revision$';
-  NrOptions = 4;
-  Options   : Array[0..NrOptions] Of String[20] =
-              ('v','callback','main','altformat','compensate');
-
-Type
-  { Properties of an object }
-  ContProps=(CPclass,CPtype,CPbox,CPBoxtype,CPColors,CPalignment,CPstyle,CPsize,
-             CPlcol,CPlabel,CPShortcut,CPresize,CPgravity,CPname,CPCallback,
-             CPargument,
-             CPinvalid);
-  { Properties of an object for which defaults must be set }
-  AdjProps=(APClass,APBoxtype,ApColors,APAlignment,APSize,APLcol,APstyle,APgravity);
-  { List of all object classes }
-  ObjClasses=(FL_INVALID,FL_BUTTON, FL_LIGHTBUTTON,FL_ROUNDBUTTON, FL_ROUND3DBUTTON,
-              FL_CHECKBUTTON, FL_BITMAPBUTTON, FL_PIXMAPBUTTON,FL_BITMAP, FL_PIXMAP,
-              FL_BOX, FL_TEXT, FL_MENU, FL_CHART, FL_CHOICE, FL_COUNTER, FL_SLIDER, FL_VALSLIDER, FL_INPUT,
-              FL_BROWSER,FL_DIAL,FL_TIMER,FL_CLOCK, FL_POSITIONER, FL_FREE,
-              FL_XYPLOT,FL_FRAME, FL_LABELFRAME, FL_CANVAS, FL_GLCANVAS,
-              FL_IMAGECANVAS, FL_FOLDER);
-  { Properties in preamble }
-  PreProps=(PPmagic,PPNrforms,PPUnitofMeasure,PPinvalid);
-  { Properties of a form }
-  FormProps=(FPName,FPWidth,FPHeight,FPnumObjs,FPinvalid);
-
-Const
-  { Names of all object properties }
-  ContPropNames : Array[ContProps] of string[20] =
-            ('class','type','box','boxtype','colors','alignment','style','size',
-             'lcol','label','shortcut','resize','gravity','name','callback',
-             'argument',
-             'invalid');
-  { Names of all object properties which must be checked.}
-  AdjPropsNames : Array[AdjProps] of string[20] =
-          ('class','boxtype','colors','alignment','size','lcol','style','gravity');
-  { Names of all preamble properties }
-  PrePropNames : Array[PreProps] of string[20] =
-            ('Magic','Number of forms','Unit of measure','Invalid');
-  { Names of all form properties }
-  FormPropNames : Array[FormProps] of string[20] =
-            ('Name','Width','Height','Number of Objects','Invalid');
-  { Names of all object classes }
-  FObjClassNames : Array[ObjClasses] of string[20]=
-             ('FL_INVALID','BUTTON', 'LIGHTBUTTON','ROUNDBUTTON', 'ROUND3DBUTTON',
-              'CHECKBUTTON', 'BITMAPBUTTON', 'PIXMAPBUTTON','BITMAP', 'PIXMAP',
-              'BOX', 'TEXT', 'MENU', 'CHART', 'CHOICE', 'COUNTER', 'SLIDER', 'VALSLIDER', 'INPUT',
-              'BROWSER','DIAL','TIMER','CLOCK', 'POSITIONER', 'FREE',
-              'XYPLOT','FRAME', 'LABELFRAME', 'CANVAS', 'GLCANVAS',
-              'IMAGECANVAS', 'FOLDER');
-
- { Default properties. If empty a property is ignored.
-   To force setting of a property, put 'FL_FORCE' as a string.
-   Mind : Case sensitive }
-
-  DefProps : array[ObjClasses,AdjProps] of string[30] =
-             (('FL_INVALID','','','','','','FL_NORMAL_STYLE','FL_FORCE'),
-              ('BUTTON','FL_UP_BOX','FL_COL1 FL_COL1','FL_ALIGN_CENTER','','FL_LCOL','FL_NORMAL_STYLE','FL_FORCE'),
-              ('LIGHTBUTTON','FL_UP_BOX','FL_COL1 FL_YELLOW','FL_ALIGN_CENTER','','FL_LCOL','FL_NORMAL_STYLE','FL_FORCE'),
-              ('ROUNDBUTTON','FL_NO_BOX','FL_MCOL FL_YELLOW','FL_ALIGN_CENTER','','FL_LCOL','FL_NORMAL_STYLE','FL_FORCE'),
-              ('ROUND3DBUTTON','FL_NO_BOX','FL_COL1 FL_BLACK','FL_ALIGN_CENTER','','FL_LCOL','FL_NORMAL_STYLE','FL_FORCE'),
-              ('CHECKBUTTON','FL_NO_BOX','FL_COL1 FL_YELLOW','FL_ALIGN_CENTER','','FL_LCOL','FL_NORMAL_STYLE','FL_FORCE'),
-              ('BITMAPBUTTON','FL_UP_BOX','FL_COL1 FL_BLUE','FL_ALIGN_BOTTOM','','FL_LCOL','FL_NORMAL_STYLE','FL_FORCE'),
-              ('PIXMAPBUTTON','FL_UP_BOX','FL_COL1 FL_YELLOW','FL_ALIGN_BOTTOM','','FL_LCOL','FL_NORMAL_STYLE','FL_FORCE'),
-              ('BITMAP','FL_NO_BOX','FL_COL1 FL_COL1','FL_ALIGN_BOTTOM','','FL_LCOL','FL_NORMAL_STYLE','FL_FORCE'),
-              ('PIXMAP','FL_NO_BOX','FL_COL1 FL_COL1','FL_ALIGN_BOTTOM','','FL_LCOL','FL_NORMAL_STYLE','FL_FORCE'),
-              ('BOX','','','','','','FL_NORMAL_STYLE','FL_FORCE'),
-              ('TEXT','FL_FLAT_BOX','FL_COL1 FL_MCOL','FL_ALIGN_LEFT','','FL_LCOL','FL_NORMAL_STYLE','FL_FORCE'),
-              ('MENU','FL_BORDER_BOX','FL_COL1 FL_MCOL','FL_ALIGN_CENTER','','FL_LCOL','FL_NORMAL_STYLE','FL_FORCE'),
-              ('CHART','FL_BORDER_BOX','FL_COL1','FL_ALIGN_BOTTOM','','FL_LCOL','FL_NORMAL_STYLE','FL_FORCE'),
-              ('CHOICE','FL_ROUNDED_BOX','FL_COL1 FL_LCOL','FL_ALIGN_LEFT','','FL_LCOL','FL_NORMAL_STYLE','FL_FORCE'),
-              ('COUNTER','FL_UP_BOX','FL_COL1 FL_BLUE','FL_ALIGN_BOTTOM','','FL_LCOL','FL_NORMAL_STYLE','FL_FORCE'),
-              ('SLIDER','FL_DOWN_BOX','FL_COL1 FL_COL1','FL_ALIGN_BOTTOM','','FL_LCOL','FL_NORMAL_STYLE','FL_FORCE'),
-              ('VALSLIDER','FL_DOWN_BOX','FL_COL1 FL_COL1','FL_ALIGN_BOTTOM','','FL_LCOL','FL_NORMAL_STYLE','FL_FORCE'),
-              ('INPUT','FL_DOWN_BOX','FL_COL1 FL_MCOL','FL_ALIGN_LEFT','','FL_LCOL','FL_NORMAL_STYLE','FL_FORCE'),
-              ('BROWSER','FL_DOWN_BOX','FL_COL1 FL_YELLOW','FL_ALIGN_BOTTOM','FL_SMALL_FONT','FL_LCOL','FL_NORMAL_STYLE','FL_FORCE'),
-              ('DIAL','FL_FLAT_BOX','FL_COL1 FL_RIGHT_BCOL','FL_ALIGN_BOTTOM','','FL_LCOL','FL_NORMAL_STYLE','FL_FORCE'),
-              ('TIMER','FL_DOWN_BOX','FL_COL1 FL_RED','FL_ALIGN_CENTER','','FL_LCOL','FL_NORMAL_STYLE','FL_FORCE'),
-              ('CLOCK','FL_UP_BOX','FL_INACTIVE_COL FL_BOTTOM_BCOL','FL_ALIGN_BOTTOM','','FL_BLACK','FL_NORMAL_STYLE','FL_FORCE'),
-              ('POSITIONER','FL_DOWN_BOX','FL_COL1 FL_RED','FL_ALIGN_BOTTOM','','FL_LCOL','FL_NORMAL_STYLE','FL_FORCE'),
-              ('FREE','','','','','','FL_NORMAL_STYLE','FL_FORCE'),
-              ('XYPLOT','FL_FLAT_BOX','FL_COL1','FL_ALIGN_BOTTOM','','FL_LCOL','FL_NORMAL_STYLE','FL_FORCE'),
-              ('FRAME','','FL_BLACK FL_COL1','','','FL_BLACK','FL_NORMAL_STYLE','FL_FORCE'),
-              ('LABELFRAME','','','','','','FL_NORMAL_STYLE','FL_FORCE'),
-              ('CANVAS','FL_NO_BOX','','FL_ALIGN_TOP','','','FL_NORMAL_STYLE','FL_FORCE'),
-              ('GLCANVAS','','','','','','FL_NORMAL_STYLE','FL_FORCE'),
-              ('IMAGECANVAS','','','','','','FL_NORMAL_STYLE','FL_FORCE'),
-              ('FOLDER','','','','','','FL_NORMAL_STYLE','FL_FORCE'));
-
-Type
-  { object data type }
-  PControl = ^TControl;
-  TControl = Record
-    Props : array[ContProps] of string;
-    NextControl : PControl;
-    end;
-
-  { Form data type}
-  PFormRec = ^TFormRec;
-  TFormRec = Record
-    Name : String;
-    Width,Height : String[5];
-    Controls : PControl;
-    NextForm : PFormRec;
-    end;
-  { Callback data type }
-  PCBrec = ^TCBrec;
-  TCBrec = record
-    name : string;
-    next : PCBrec;
-    end;
-  { Property emitting procedures }
-  EmitProp = Procedure (Data : PControl;ObjClass : ObjClasses);
-
-Var
-  OptionsSet : Array[1..NrOptions] Of Boolean;
-  FileName : String;
-  Infile,outfile : Text;
-  LineNr : Longint;
-  NrForms,NrControls : Longint;
-  FormRoot : PFormRec;
-  cbroot : pcbrec;
-  { Default properties emitters }
-  EmitProcs : array [AdjProps] of EmitProp;
-  { Class specific property emitters. Nil pointers are ignored.}
-  ClassEmitters : Array[ObjClasses] of EmitProp;
-
-{ ------------------------------------------------------------------------
-  Utilities Code
-  ------------------------------------------------------------------------ }
-
-
-Function IntTostr (s : Longint) : String;
-
-var temp : String;
-
-begin
-  str(s,temp);
-  IntToStr:=Temp;
-end;
-
-
-Procedure EmitError (Const s : String);
-
-begin
-  writeln (stderr,'Error: ',s);
-  flush(stderr)
-end;
-
-Procedure EmitLineError (Const s : string);
-
-begin
-  EmitError('Line '+IntToStr(LineNr)+': '+s)
-end;
-
-
-{ ------------------------------------------------------------------------
-  Option handling Code
-  ------------------------------------------------------------------------ }
-
-
-Procedure DoOptions;
-
-Var i,j,k : byte;
-    os : string;
-
-Procedure ShowVersion;
-
-begin
-  Writeln ('fd2pascal : ',RevString);
-  Halt(0);
-end;
-
-Procedure ShowUsage;
-
-begin
-  Writeln ('fd2pascal : usage :');
-  writeln (' fd2pascal [options] filename');
-  writeln (' Where [options] may be zero or more of :');
-  writeln ('  -compensate    Emit size-compensation code.');
-  writeln ('  -altformat     Emit code in alternate format.');
-  writeln ('  -main          Emit program instead of unit.');
-  writeln ('  -callback      Emit callback stubs.');
-  writeln;
-  halt(0);
-end;
-
-begin
-  if paramcount=0 then
-     ShowUsage;
-  FileName:='';
-  for i:=1 to paramcount do
-    begin
-    if paramstr(i)[1]<>'-' then
-      If FileName<>'' then
-        EmitError('Only one filename supported. Ignoring :'+paramstr(i))
-      else
-        Filename:=Paramstr(i)
-    else
-      begin
-      os:=copy(paramstr(i),2,length(paramstr(i))-1);
-      k:=NrOptions+1;
-      for j:=0 to NrOptions do
-        if os=options[j] then k:=j;
-      if k=NrOptions+1 then
-        EmitError('Option not recognised : '+paramstr(i))
-      else
-        if k=0 then ShowVersion else OptionsSet[k]:=True;
-      end
-    end; {for}
-  if FileName='' then
-    begin
-    EmitError('No filename supplied. Exiting.');
-    halt(1);
-    end;
-end;
-
-{ ------------------------------------------------------------------------
-  Code for reading the input file.
-  ------------------------------------------------------------------------ }
-
-
-Procedure OpenFile;
-begin
-  if pos('.fd',FileName)=0 then
-    FileName:=FileName+'.fd';
-  assign(infile,Filename);
-{$i-}
-  reset (infile);
-{$i+}
-  if ioresult<>0 then
-    begin
-    EmitError('Can''t open : '+filename);
-    halt(1);
-    end;
-  LineNr:=0;
-end;
-
-Procedure CloseFile;
-
-begin
-  Close(infile);
-end;
-
-Procedure GetLine(Var S : String);
-
-begin
-  inc(LineNr);
-  Readln(infile,s);
-{$ifdef debug}
-  writeln ('Reading line : ',linenr)
-{$endif}
-end;
-
-Procedure ProcessPreAmbleLine (Const s: String);
-
-var key,value : string;
-    ppos : Longint;
-    i,k : PreProps;
-    code : Word;
-
-begin
-  if s='' then exit;
-  ppos:=pos(':',s);
-  if ppos=0 then
-    exit;
-  Key:=Copy(s,1,ppos-1);
-  Value:=Copy(s,ppos+2,length(s)-ppos-1);
-  k:=PPinvalid;
-  for i:=PPmagic to PPinvalid do
-    if key=PrePropNames[i] then k:=i;
-  if k=PPinvalid then
-    EmitLineError('Unknown keyword : '+Key)
-  else
-    Case K of
-      PPMagic,
-      PPunitofmeasure: ;
-      PPnrforms: begin
-               val(value,NrForms,code);
-               if code<>0 then EmitLineError('Invalid number of forms');
-               end;
-    end;
-end;
-
-{ ------------------------------------------------------------------------
-  Code for reading preamble.
-  ------------------------------------------------------------------------ }
-
-
-Procedure DoPreamble;
-
-var line : String;
-
-begin
-{$ifdef debug}
-  writeln ('Starting preamble');
-{$endif}
-  Getline (line);
-  while pos('= FORM =',line)=0 do
-    begin
-    ProcessPreAmbleLine(line);
-    GetLine(Line)
-    end;
-end;
-
-{ ------------------------------------------------------------------------
-  Code for reading 1 object.
-  ------------------------------------------------------------------------ }
-
-
-Procedure ProcessControlLine (PC : PControl; const S : String);
-
-Var Key,Value : String;
-    i,k : ContProps;
-    ppos : word;
-
-begin
-  if s='' then exit;
-  ppos:=pos(':',s);
-  if ppos=0 then
-    exit;
-  Key:=Copy(s,1,ppos-1);
-  Value:=Copy(s,ppos+2,length(s)-ppos-1);
-  K:=CPInvalid;
-  For i:=CPclass to CPInvalid do
-    if ContPropNames[i]=Key then k:=i;
-  if K=CPinvalid then
-     begin
-     EmitLineError('Unknown keyword'+key);
-     exit
-     end;
-  PC^.props[k]:=value;
-end;
-
-Procedure ProcessControl (PC : PControl);
-
-var line : String;
-
-begin
-{$ifdef debug}
-  Writeln ('Starting Control');
-{$endif}
-  Getline(Line);
-  while Line<>'' do
-    begin
-    ProcessControlLine (PC,line);
-    Getline(Line);
-    end;
-  Getline(Line)
-end;
-
-{ ------------------------------------------------------------------------
-  Code for reading 1 form.
-  ------------------------------------------------------------------------ }
-
-Procedure ProcessFormLine (PF : PFormRec; const S : String);
-
-Var Key,Value : String;
-    i,k : FormProps;
-    ppos,code : word;
-
-begin
-  if s='' then exit;
-  ppos:=pos(':',s);
-  if ppos=0 then
-    exit;
-  Key:=Copy(s,1,ppos-1);
-  Value:=Copy(s,ppos+2,length(s)-ppos-1);
-  K:=FPInvalid;
-  For i:=FPName to FPInvalid do
-    if FormPropNames[i]=Key then k:=i;
-  if K=FPinvalid then
-     begin
-     EmitLineError('Unknown keyword'+key);
-     exit
-     end;
-  case k of
-    FPname    : PF^.name:=value;
-    FPWidth   : PF^.width:=value;
-    FPHeight  : PF^.height:=value;
-    FPNumObjs : begin
-                val(value,Nrcontrols,code);
-                If Code<>0 then EmitLineError('Invalid number of objects : '+value)
-                end;
-    end;
-end;
-
-Procedure ProcessForm (PF : PFormRec);
-
-Var line : String;
-    CurrentControl : PControl;
-    I : Integer;
-
-begin
-{$ifdef debug}
-  writeln('Starting form');
-{$endif}
-  NrControls:=0;
-  with PF^ do
-    begin
-    name:='';
-    Width:='';
-    Height:='';
-    Controls:=nil;
-    GetLine(Line);
-    while line<>'' do
-      begin
-      ProcessFormLine(PF,Line);
-      GetLine(Line);
-      end;
-    Getline(Line);
-    If NrControls=0 then
-      Controls:=nil
-    else
-      begin
-      New (Controls);
-      CurrentControl:=Controls;
-      for i:=1 to nrcontrols do
-        begin
-        ProcessControl(CurrentControl);
-        if i<NrControls then
-          New(CurrentControl^.NextControl)
-        else
-          CurrentControl^.NextControl:=nil;
-        CurrentControl:=CurrentControl^.NextControl
-        end; { for }
-      end; { Else }
-    end; { With }
-end;
-
-{ ------------------------------------------------------------------------
-  Code for reading the forms.
-  ------------------------------------------------------------------------ }
-
-
-Procedure DoForms;
-
-Var
-    i : Longint;
-    CurrentForm: PformRec;
-
-begin
-  FormRoot:=Nil;
-  if NrForms=0 then exit;
-  new(FormRoot);
-  Currentform:=FormRoot;
-  for i:=1 to nrforms do
-     begin
-     ProcessForm (CurrentForm);
-     If i=nrforms then
-       Currentform^.NextForm:=nil
-     else
-       New(CurrentForm^.NextForm);
-     CurrentForm:=CurrentForm^.NextForm;
-     end;
-end;
-
-{ ------------------------------------------------------------------------
-  Code for reading the postamble.
-  ------------------------------------------------------------------------ }
-
-
-Procedure DoPostamble;
-
-begin
-end;
-
-{ ------------------------------------------------------------------------
-  Code for writing the output file.
-  ------------------------------------------------------------------------ }
-
-Procedure OpenOutFile;
-
-var info : stat;
-
-begin
-  FileName:=Copy(Filename,1,Length(Filename)-3)+'.pp';
-  fstat(FileName,info);
-  if linuxerror=0 then
-    begin
-    { File exists, move to .bak}
-    link (FileName,FileName+'.bak');
-    unlink (FileName);
-    end;
-  assign(outfile,filename);
-{$i-}
-  rewrite(outfile);
-{$i+}
-  if ioresult<>0 then
-    begin
-    EmitError('Couldn''t open output file : '+filename);
-    halt(1)
-    end;
-end;
-
-Procedure CloseOutFile;
-
-begin
- Close(OutFile);
-end;
-
-{ ------------------------------------------------------------------------
-  Code to emit Header/variable/type declarations
-  ------------------------------------------------------------------------ }
-
-
-Procedure EmitType (fp : Pformrec);
-
-var cp : PControl;
-
-begin
-  writeln (OutFile,'  TFD_',fp^.name,' = record');
-  writeln (OutFile,'    ',fp^.name,' : PFL_FORM;');
-  writeln (OutFile,'    vdata : Pointer;');
-  writeln (OutFile,'    ldata : Longint;');
-  cp:=fp^.controls;
-  {Skip first control, is formbackground }
-  if cp<>nil then cp:=cp^.nextcontrol;
-  while cp<>nil do
-    begin
-    if cp^.props[CPclass]<>'FL_END_GROUP' then
-      begin
-      write (Outfile,'    ',cp^.props[CPname]);
-      if cp^.nextcontrol<>nil then
-        writeln (OutFile,',')
-      else
-        writeln (OutFile,' : PFL_OBJECT;');
-      end;
-    cp:=cp^.nextcontrol;
-    end;
-  writeln (OutFile,'    end;');
-  writeln (OutFile,'  PFD_',fp^.name,' = ^TFD_',fp^.name,';');
-  writeln (OutFile);
-end;
-
-Procedure EmitVar (fp : Pformrec);
-
-var cp : PControl;
-
-begin
-  writeln (OutFile,'  ',fp^.name,' : PFL_FORM;');
-  cp:=fp^.controls;
-  {Skip first control, is formbackground }
-  if cp<>nil then cp:=cp^.nextcontrol;
-  while cp<>nil do
-    begin
-    if cp^.props[CPclass]<>'FL_END_GROUP' then
-      begin
-      write (Outfile,'  ',cp^.props[CPname]);
-      if cp^.nextcontrol<>nil then
-        writeln (OutFile,',')
-      else
-        writeln (OutFile,' : PFL_OBJECT;');
-      end;
-    cp:=cp^.nextcontrol;
-    end;
-  writeln (OutFile);
-end;
-
-Procedure EmitHeader;
-
-var fp : PFormRec;
-
-begin
-  if OptionsSet[2] then
-    write   (OutFile,'Program ')
-  else
-    write   (OutFile,'Unit ');
-  writeln (OutFile,basename(filename,'.pp'),';');
-  writeln (OutFile);
-  writeln (OutFile,'{ Form definition file generated by fd2pascal }');
-  writeln (Outfile);
-  if not OptionsSet[2] then
-     begin
-     writeln (OutFile,'Interface');
-     writeln (OutFile);
-     end;
-  writeln (OutFile,'Uses forms;');
-  writeln (OutFile);
-  writeln (OutFile,'  { Variable / Type definitions. }');
-  if Optionsset[3] then
-    writeln (OutFile,'Var')
-  else
-    writeln (OutFile,'Type');
-  fp:=FormRoot;
-  While fp<>nil do
-    begin
-    if not optionsset[3] then
-      EmitType(fp) { Emit Type definitions }
-    else
-      EmitVar(fp); { Emit Variable declaration}
-    fp:=fp^.nextform;
-    end;
-  if not optionsset[2] then
-    begin
-    { No program, we must emit interface stuff }
-    if not (optionsset[3]) then
-      begin
-      { Emit normal interface declarations
-        -> functions }
-      fp:=formroot;
-      while fp<>nil do
-        begin
-        with fp^ do
-          writeln (OutFile,'Function create_form_',name,' : PFD_',name,';');
-        fp:=fp^.nextform;
-        end;
-      end
-    else
-      begin
-      { Emit alternate interface declaration
-        -> 1 function to create all forms.}
-      writeln (OutFile,'Procedure Create_The_Forms;');
-      end;
-    writeln (OutFile);
-    writeln (OutFile,'Implementation');
-    end
-  else
-    begin
-    { We must make a program. }
-    if not(optionsset[3]) then
-      begin
-      { Normal format, so we need to emit variables for the forms.}
-      writeln (OutFile,'Var');
-      fp:=formroot;
-      while fp<>nil do
-        begin
-        writeln (OutFile,'  ',fp^.name,' : PFD_',fp^.name,';');
-        fp:=fp^.nextform;
-        end;
-      writeln (OutFile);
-      end;
-    end;
-  writeln (OutFile);
-end;
-
-{ ------------------------------------------------------------------------
-  Code to emit footer/main program
-  ------------------------------------------------------------------------ }
-
-
-Procedure EmitCreateforms;
-
-var fp : PFormRec;
-
-begin
-  writeln (OutFile,'Procedure Create_The_Forms;');
-  writeln (OutFile);
-  writeln (OutFile,'begin');
-  fp:=FormRoot;
-  while fp<>nil do
-    begin
-    writeln(OutFile,'create_form_',fp^.name,';');
-    fp:=fp^.nextform;
-    end;
-  writeln (outFile,'End;');
-  writeln (OutFile);
-end;
-
-Procedure EmitAlternateMain;
-begin
-  { Alternate format, we just call creatallforms to create all forms}
-  writeln (OutFile,'Create_The_Forms;');
-  writeln (OutFile,'  fl_show_form(',formroot^.name,
-                   ',FL_PLACE_CENTER,FL_FULLBORDER,''',
-                   FormRoot^.name,''');');
-end;
-
-Procedure EmitMain;
-
-var fp : PFormRec;
-
-begin
-  { variables are emitted in the header }
-  fp:=formroot;
-  { Create all forms }
-  while fp<>nil do
-    begin
-    writeln (OutFile,'  ',fp^.name,' :=Create_Form_',fp^.name,';');
-    fp:=fp^.nextform;
-    end;
-  { Show the first form }
-  writeln (OutFile,'  fl_show_form(',formroot^.name,'^.',Formroot^.name,
-                   ',FL_PLACE_CENTER,FL_FULLBORDER,''',
-                   FormRoot^.name,''');');
-end;
-
-Procedure EmitFooter;
-begin
-  if OptionsSet[3] then {Alternate format.}
-     EmitCreateForms;
-  if Optionsset[2] then
-    begin
-    {Emit Main Program}
-    writeln (OutFile);
-    writeln (OutFile,'Begin');
-    writeln (OutFile,'  fl_initialize (@argc,argv,''',
-                     BaseName(Filename,'.pp'),''',nil,0);');
-    if Not(OptionsSet[3]) then
-      EmitMain
-    else
-      EmitAlternateMain;
-    writeln (OutFile,'  fl_do_forms;');
-    end
-  else
-    writeln (OutFile,'begin');
-  writeln (OutFile,'end.')
-end;
-
-
-
-
-{ ------------------------------------------------------------------------
-  Code to emit properties
-  ------------------------------------------------------------------------ }
-
-
-Function EmitString(S : string) : String;
-
-var temp : String;
-    i : longint;
-
-begin
-  temp:='''';
-  for i:=1 to length(s) do
-    if s[i]<>'''' then temp:=temp+s[i] else temp:=temp+'''''';
-  Temp:=temp+'''';
-  EmitString:=temp;
-end;
-
-Procedure EmitBoxtype (cp : PControl;ObjClass : ObjClasses);
-
-begin
-{$ifdef debug}
-  writeln ('EmitBoxType called with args:');
-  writeln (cp^.props[cpboxtype]);
-  writeln (defprops[objclass,APboxtype]);
-  writeln ('for object : ',defprops[objclass,apclass]);
-  writeln ('With object : ',cp^.props[cpclass]);
-{$endif}
-  if cp^.props[cpboxtype]<>defprops[objclass,APboxtype] then
-    writeln (OutFile,'    fl_set_object_boxtype(obj,',
-                    cp^.props[cpboxtype],');')
-end;
-
-Procedure EmitColors (cp : PControl;ObjClass : ObjClasses);
-
-var temp : string;
-
-begin
-  if cp^.props[cpcolors]<>defprops[objclass,APcolors] then
-    begin
-    temp:=cp^.props[cpcolors];
-    if pos(' ',temp)=0 then exit;
-    temp[pos(' ',temp)]:=',';
-    writeln (OutFile,'    fl_set_object_color(obj,',temp,');');
-    end;
-end;
-
-Procedure EmitAlignment (cp : PControl;ObjClass : ObjClasses);
-
-begin
- if cp^.props[cpalignment]<>defprops[objclass,APalignment] then
-    writeln (OutFile,'    fl_set_object_alignment(obj,',
-                     cp^.props[cpalignment],');');
-end;
-
-Procedure EmitLcol (cp : PControl;ObjClass : ObjClasses);
-
-begin
- if cp^.props[cplcol]<>defprops[objclass,APlcol] then
-    writeln (OutFile,'    fl_set_object_lcol(obj,',
-                     cp^.props[cplcol],');');
-end;
-
-
-Procedure EmitSize (cp : PControl;ObjClass : ObjClasses);
-
-begin
- if cp^.props[cpsize]<>defprops[objclass,APsize] then
-    writeln (OutFile,'    fl_set_object_lsize(obj,',
-                     cp^.props[cpsize],');');
-end;
-
-Procedure EmitStyle (cp : PControl;ObjClass : ObjClasses);
-
-begin
- if cp^.props[cpstyle]<>defprops[objclass,APstyle] then
-    writeln (OutFile,'    fl_set_object_lstyle(obj,',
-                     cp^.props[cpstyle],');');
-end;
-
-Procedure EmitGravity (cp : PControl;ObjClass : ObjClasses);
-
-var temp: string;
-
-begin
- if cp^.props[cpstyle]<>'FL_NoGravity FL_NoGravity' then
-    begin
-    temp:=cp^.props[cpstyle];
-    if pos(' ',temp)=0 then exit;
-    temp[pos(' ',temp)]:=',';
-    writeln (OutFile,'    fl_set_object_gravity(obj,',
-                     temp,');');
-    end;
-end;
-
-
-Procedure EmitProperties (Cp : PControl; Objclass : ObjClasses);
-
-Var i : AdjProps;
-
-begin
-  for i:=APboxtype to APgravity do
-    if DefProps[ObjClass,i]<>'' then
-       EmitProcs[i](cp,objclass);
-end;
-
-{ ------------------------------------------------------------------------
-  Code to emit objects
-  ------------------------------------------------------------------------ }
-
-Procedure EmitObject(cp : PControl);
-
-var temp : string;
-    I : Longint;
-    j,k : ObjClasses;
-
-begin
-with cp^ do
-  begin
-  temp:=lowercase(props[CPclass]);
-  delete(temp,1,3);
-  if temp='begin_group' then
-    begin
-    writeln (OutFile);
-    write (OutFile,'  ');
-    if not (Optionsset[3]) then Write (OutFile,'fdui^.');
-    writeln (OutFile,props[cpname],':=fl_bgn_group;');
-    exit;
-    end
-  else if temp='end_group' then
-    begin
-    writeln (OutFile,'  fl_end_group;');
-    writeln (OutFile);
-    exit;
-    end;
-  { Normal object. Emit creation code. }
-  write (OutFile,'  obj:=fl_add_',temp,' (FL_',props[Cptype],',');
-  temp:=props[cpbox];
-  for i:=1 to 3 do
-    begin
-    write (OutFile,copy(temp,1,pos(' ',temp)-1),',');
-    delete (temp,1,pos(' ',temp));
-  end;
-  writeln (OutFile,temp,',',EmitString(props[cplabel]),');');
-  { Emit Callback code if needed }
-  if props[cpcallback]<>'' then
-    begin
-    write (OutFile,'    fl_set_object_callback(obj,PFL_CALLBACKPTR(@');
-    write (OutFile,props[CPcallback],'),');
-    if props[CPargument]<>'' then
-       writeln (OutFile,props[CPargument],');')
-    else
-       writeln (OutFile,'0);');
-    end;
-  { If known object, start emitting properties }
-  temp:=props[CPclass];
-  delete(temp,1,3);
-  k:=FL_INVALID;
-  for j:=FL_BUTTON to FL_FOLDER do
-    if temp=DefProps[j,apclass] then k:=j;
-  if k<>FL_INVALID then
-     begin
-     { Emit defaults }
-     EmitProperties (cp,k);
-     { If A class-specific emitter exists, call it.}
-     if Assigned(ClassEmitters[k]) then
-       ClassEmitters[k] (cp,k);
-     end;
-  { Assign to needed object. }
-  if Optionsset[3] then
-    Writeln (OutFile,'  ',props[cpname],':=obj;')
-  else
-    Writeln (OutFile,'  fdui^.',props[cpname],':=obj;');
-  end;
-end;
-
-{ ------------------------------------------------------------------------
-  Code to emit forms
-  ------------------------------------------------------------------------ }
-
-Procedure EmitForm(fp : PFormRec);
-
-Var
-cp : PControl;
-
-begin
-with fp^ do
-  begin
-  if Optionsset[3] then
-    begin
-    writeln (OutFile,'Procedure create_form_',name,';');
-    writeln (OutFile);
-    writeln (OutFile,'Var obj : PFL_OBJECT;');
-    writeln (OutFile);
-    writeln (OutFile,'Begin');
-    writeln (OutFile,'  If ',name,'<>nil then exit;');
-    write   (OutFile,'  ',name);
-    end
-  else
-    begin
-    writeln (OutFile,'Function create_form_',name,' : PFD_',name,';');
-    writeln (OutFile);
-    writeln (OutFile,'Var obj : PFL_OBJECT;');
-    writeln (OutFile,'    fdui : PFD_',name,';');
-    writeln (OutFile);
-    writeln (OutFile,'Begin');
-    writeln (OutFile,'  New(fdui);');
-    write (OutFile,'  fdui^.',name);
-    end;
-  writeln (OutFile,':=fl_bgn_form(FL_NO_BOX,'
-                                                  ,width,','
-                                                  ,height,');');
-  cp:=controls;
-  writeln (OutFile,'  obj:=fl_add_box(',cp^.props[CPboxtype],',0,0,',
-                                      width,',',
-                                      height,',',
-                                      EmitString (cp^.props[CPname]),');');
-  cp:=cp^.nextcontrol;
-  { Emit all objects }
-  while cp<>nil do
-    begin
-    EmitObject(cp);
-    cp:=cp^.nextcontrol;
-    end;
-  writeln (OutFile,'  fl_end_form;');
-  if Optionsset[4] then
-    begin
-    { Emit Compensation code }
-    write (OutFile,'  fl_adjust_form_size(');
-    if not(OptionsSet[3]) then write (OutFile,'fdui^.');
-    writeln(OutFile,fp^.name,');');
-    end;
-  if not(OptionsSet[3]) then
-    begin
-    writeln (OutFile,'  fdui^.',fp^.name,'^.fdui:=fdui;');
-    writeln (OutFile,'  create_form_',fp^.name,':=fdui;');
-    end;
-  writeln (OutFile,'end;');
-  writeln (OutFile);
-  end;
-end;
-
-Procedure EmitForms;
-
-var
-  fp : PformRec;
-begin
-  { Start emitting forms }
-  fp:=Formroot;
-  while fp<>nil do
-    begin
-    EmitForm(fp);
-    fp:=fp^.nextform;
-    end;
-end;
-
-{ ------------------------------------------------------------------------
-  Code to emit callbacks
-  ------------------------------------------------------------------------ }
-
-Procedure CollectCallbacks;
-
-Var CurrentCb,CBwalk : PCBrec;
-    fp : PformRec;
-    cp : PControl;
-
-begin
-  CbRoot:=nil;
-  CurrentCB:=cbroot;
-  fp:=formroot;
-  while fp<>nil do
-    begin
-    cp:=fp^.controls;
-    while cp<>nil do
-      begin
-      if cp^.props[CPcallback]<>'' then
-        if cbroot<>nil then
-          begin
-          cbwalk:=cbroot;
-          while cbwalk<>nil do
-            if upcase(cbwalk^.name)=upcase(cp^.props[CPcallback]) then
-              break
-            else
-              cbwalk:=cbwalk^.next;
-          if cbwalk=nil then
-            begin
-            new(currentcb^.next);
-            currentcb:=currentcb^.next;
-            currentcb^.name:=cp^.props[CPcallback];
-            currentcb^.next:=nil;
-            end;
-          end
-        else
-          begin
-          new(cbroot);
-          currentcb:=cbroot;
-          cbroot^.name:=cp^.props[CPcallback];
-          cbroot^.next:=nil;
-          end;
-      cp:=cp^.nextcontrol;
-      end;
-    fp:=fp^.nextform;
-    end;
-end;
-
-Procedure EmitCallback (Const s : string);
-
-begin
-  writeln (OutFile,'Procedure ',s,' (Sender: PFL_OBJECT; Data : Longint); export;');
-  writeln (OutFile);
-  writeln (OutFile,'begin');
-  writeln (OutFile,'  { Place your code here }');
-  writeln (OutFile,'end;');
-  writeln (OutFile);
-end;
-
-Procedure EmitCallBacks;
-
-var cb : pcbrec;
-
-begin
-  { See if we must emit callback stubs }
-  If Optionsset[1] then
-    begin
-    cb:=cbroot;
-    while cb<>nil do
-      begin
-      EmitCallBack(cb^.Name);
-      cb:=cb^.next;
-      end;
-    end;
-end;
-
-
-{ ------------------------------------------------------------------------
-  EmitterTable initialization Code
-  ------------------------------------------------------------------------ }
-
-Procedure EmitDummy (cp : PControl;ObjClass : ObjClasses);
-
-begin
-end;
-
-Procedure InitEmitters;
-
-var i : objclasses;
-
-begin
-  EmitProcs[APClass]:=@EmitDummy;
-  EmitProcs[APBoxtype]:=@EmitBoxType;
-  EmitProcs[APColors]:=@EmitColors;
-  EmitProcs[APAlignment]:=@EmitAlignment;
-  EmitProcs[APlcol]:=@EmitLcol;
-  EmitProcs[APsize]:=@EmitSize;
-  EmitProcs[APStyle]:=@EmitStyle;
-  EmitProcs[APgravity]:=@EmitGravity;
-  for i:=FL_INVALID to FL_FOLDER do
-    ClassEmitters[i]:=EmitProp(Nil);
-end;
-
-{ ------------------------------------------------------------------------
-  Main program Code
-  ------------------------------------------------------------------------ }
-
-
-begin
-  { Process options }
-  DoOptions;
-  { Read input file }
-  OpenFile;
-  DoPreamble;
-  DoForms;
-  DoPostamble;
-  CloseFile;
-  { Write output file }
-  OpenOutfile;
-  InitEmitters;
-  CollectCallbacks;
-  EmitHeader;
-  EmitCallbacks;
-  EmitForms;
-  EmitFooter;
-  CloseOutFile;
-end.  $Log$
-end.  Revision 1.4  2001-04-08 12:27:55  peter
-end.    * made it compilable with both 1.0.x and 1.1
-end.
-end.  Revision 1.3  2001/01/21 21:38:52  marco
-end.   * renamefest in packages
-end.
-end.  Revision 1.2  2000/07/13 11:33:11  michael
-end.  + removed logs
-end.
-}

+ 0 - 2928
packages/forms/forms.pp

@@ -1,2928 +0,0 @@
-{
-  $Id$
-}
-Unit forms;
-Interface
-
-{$linklib forms}
-{$linklib c}
-{$linklib m}
-
-uses
-  x,xlib,xutil,xresource;
-
-const
-  FL_VERSION=0;
-  FL_REVISION=88;
-  FL_FIXLEVEL=0;
-  FL_INCLUDE_VERSION=FL_VERSION * 1000 + FL_REVISION;
-
-{ some general constants }
-    FL_ON = 1;
-    FL_OK = 1;
-    FL_VALID = 1;
-    FL_PREEMPT = 1;
-    FL_AUTO = 2;
-    FL_WHEN_NEEDED = FL_AUTO;
-
-    FL_OFF = 0;
-    {FL_NONE = 0;}
-    FL_CANCEL = 0;
-    FL_INVALID = 0;
-
-    FL_IGNORE = -1;
-    FL_CLOSE = -2;
-{
- * The screen coordinate unit, FL_Coord, must be of signed type. Without
- * prototype support, a type other than integer might not work right.
- * If FL_Coord is float, FL_CoordIsFloat must be defined to be 1 so that
- * round-off error can be checked. **TODO Float not tested ***
- }
-Type PWord   = ^Word;
-     PDouble = ^Double;
-     PFloat  = ^Real;
-     PLongint = ^Longint;
-     PCardinal = ^Cardinal;
-     
-type TFL_Coord = Longint ;
-     PFL_Coord = ^TFL_Coord;
-{ #define FL_CoordIsFloat 0      define this if FL_Coord is of type float }
-   TFL_COLOR = longint; { Was cardinal }
-   PFL_COLOR = ^TFL_COLOR;
-
-{
- * Coordinates can be in pixels, milli-meters or points (1/72inch)
- }
-  TFL_COORD_UNIT=Longint ;
-  { POssible values }
-Const
-    FL_COORD_PIXEL=0;           { default, Pixel           }
-    FL_COORD_MM=1;              { milli-meter              }
-    FL_COORD_POINT=2;           { point                    }
-    FL_COORD_centiMM=3;         { one hundredth of a mm    }
-    FL_COORD_centiPOINT=4;      { one hundredth of a point }
-
-{
- * All object classes.
- }
-
-type TFL_Class = Longint;
-
-Const { Possible values }
-    FL_INVALID_CLASS=0;
-    FL_BUTTON=1;
-    FL_LIGHTBUTTON=2;
-    FL_ROUNDBUTTON=3;
-    FL_ROUND_3DBUTTON=4;
-    FL_CHECKBUTTON=5;
-    FL_BITMAPBUTTON=6;
-    FL_PIXMAPBUTTON=7;
-    FL_BITMAP=8;
-    FL_PIXMAP=9;
-    FL_BOX=10;
-    FL_TEXT=11;
-    FL_MENU=12;
-    FL_CHART=13;
-    FL_CHOICE=14;
-    FL_COUNTER=15;
-    FL_SLIDER=16;
-    FL_VALSLIDER=17;
-    FL_INPUT=18;
-    FL_BROWSER=19;
-    FL_DIAL=21;
-    FL_TIMER=21;
-    FL_CLOCK=22;
-    FL_POSITIONER=23;
-    FL_FREE=24;
-    FL_XYPLOT=25;
-    FL_FRAME=26;
-    FL_LABELFRAME=27;
-    FL_CANVAS=28;
-    FL_GLCANVAS=29;
-    FL_TABFOLDER=30;
-    FL_SCROLLBAR=31;
-    FL_SCROLLBUTTON=32;
-    FL_MENUBAR=33;
-    FL_IMAGECANVAS=34;
-    FL_TEXTBOX=35;
-
-{ how to display a form onto screen }
-
-Type
-    TFL_PLace = Longint;
-
-Const
-    FL_PLACE_FREE = 0;          { size remain resizable      }
-    FL_PLACE_MOUSE = 1;         { mouse centered on form     }
-    FL_PLACE_CENTER = 2;        { center of the screen       }
-    FL_PLACE_POSITION = 4;      { specific size              }
-    FL_PLACE_SIZE = 8;          { specific size              }
-    FL_PLACE_GEOMETRY = 16;     { specific position          }
-    FL_PLACE_ASPECT = 32;       { keep aspect ratio          }
-    FL_PLACE_FULLSCREEN = 64;   { scale to fit screen        }
-    FL_PLACE_HOTSPOT = 128;     { so mouse fall on (x,y)     }
-    FL_PLACE_ICONIC = 256;
-    { modifier }
-    FL_FREE_SIZE = 1 shl 14;
-    FL_FIX_SIZE = 1 shl 15;
-
-    FL_PLACE_FREE_CENTER =  FL_PLACE_CENTER or FL_FREE_SIZE;
-    FL_PLACE_CENTERFREE = FL_PLACE_CENTER or FL_FREE_SIZE;
-
-{ Window manager decoration request }
-
-type
-    TFL_DECORATION = Longint;
-
-Const { Possible values for FL_DECORATION }
-    FL_FULLBORDER = 1;          { normal }
-    FL_TRANSIENT = 2;           { set TRANSIENT_FOR property              }
-    FL_NOBORDER = 3;            { use override_redirect to supress decor. }
-    FL_MODAL = 1 << 8;
-type
- { All box types }
-    TFL_BOX_TYPE = Longint;
-Const { Possible values }
-    FL_NO_BOX=0;
-    FL_UP_BOX=1;
-    FL_DOWN_BOX=2;
-    FL_BORDER_BOX=3;
-    FL_SHADOW_BOX=4;
-    FL_FRAME_BOX=5;
-    FL_ROUNDED_BOX=6;
-    FL_EMBOSSED_BOX=7;
-    FL_FLAT_BOX=8;
-    FL_RFLAT_BOX=9;
-    FL_RSHADOW_BOX=10;
-    FL_OVAL_BOX=11;
-    FL_ROUNDED3D_UPBOX=12;
-    FL_ROUNDED3D_DOWNBOX=13;
-    FL_OVAL3D_UPBOX=14;
-    FL_OVAL3D_DOWNBOX=15;
-    FL_OVAL3D_FRAMEBOX=16;
-    FL_OVAL3D_EMBOSSEDBOX=17;
-    { Internal use only }
-    FL_TOPTAB_UPBOX=18;
-    FL_SELECTED_TOPTAB_UPBOX=19;
-    FL_BOTTOMTAB_UPBOX=20;
-    FL_SELECTED_BOTTOMTAB_UPBOX=21;
-    FL_OSHADOW_BOX=22;
-
-{ How to place text relative to a box }
-Type
-    TFL_ALIGN = Longint;
-
-Const { Possible values for FL_ALIGN }
-    FL_ALIGN_CENTER = 0;
-    FL_ALIGN_TOP = 1;
-    FL_ALIGN_BOTTOM = 2;
-    FL_ALIGN_LEFT = 4;
-    FL_ALIGN_RIGHT = 8;
-    FL_ALIGN_TOP_LEFT = FL_ALIGN_TOP or FL_ALIGN_LEFT;
-    FL_ALIGN_TOP_RIGHT = FL_ALIGN_TOP or FL_ALIGN_RIGHT;
-    FL_ALIGN_BOTTOM_LEFT = FL_ALIGN_BOTTOM or FL_ALIGN_LEFT;
-    FL_ALIGN_BOTTOM_RIGHT = FL_ALIGN_BOTTOM or FL_ALIGN_RIGHT;
-    FL_ALIGN_INSIDE = (1 shl 13);
-    FL_ALIGN_VERT = (1 shl 14); { not functional yet  }
-
-    FL_ALIGN_LEFT_TOP = FL_ALIGN_TOP_LEFT;
-    FL_ALIGN_RIGHT_TOP = FL_ALIGN_TOP_RIGHT;
-    FL_ALIGN_LEFT_BOTTOM = FL_ALIGN_BOTTOM_LEFT;
-    FL_ALIGN_RIGHT_BOTTOM = FL_ALIGN_BOTTOM_RIGHT;
-
-{ Mouse buttons }
-
-FL_MBUTTON1=1; FL_LEFT_MOUSE=FL_MBUTTON1;
-FL_MBUTTON2=2; FL_MIDDLE_MOUSE=FL_MBUTTON2;
-FL_MBUTTON3=3; FL_RIGHT_MOUSE=FL_MBUTTON3;
-FL_MBUTTON4=4;
-FL_MBUTTON5=5;
-
-
-{ control when to reutrn input, slider and dial object. }
-
-    FL_RETURN_END_CHANGED = 0;
-    FL_RETURN_CHANGED = 1;
-    FL_RETURN_END = 2;
-    FL_RETURN_ALWAYS = 3;
-    FL_RETURN_DBLCLICK = 4;
-
-{
- *  Some special color indeces for FL private colormap. It does not matter
- *  what the value of each enum is, but it must start from 0 and be
- *  consecutive.
- }
-
-
-
-Type
-    TFL_DP_COL = Longint;
-Const
-    FL_BLACK            = 0;
-    FL_RED              = 1;
-    FL_GREEN            = 2;
-    FL_YELLOW           = 3;
-    FL_BLUE             = 4;
-    FL_MAGENTA          = 5;
-    FL_CYAN             = 6;
-    FL_WHITE            = 7;
-
-    FL_TOMATO           = 8;
-    FL_INDIANRED        = 9;
-    FL_SLATEBLUE        = 10;
-
-    FL_COL1             = 11;
-    FL_RIGHT_BCOL       = 12;
-    FL_BOTTOM_BCOL      = 13;
-    FL_TOP_BCOL         = 14;
-    FL_LEFT_BCOL        = 15;
-    FL_MCOL             = 16;
-
-    FL_INACTIVE         = 17;
-    FL_PALEGREEN        = 18;
-    FL_DARKGOLD         = 19;
-
-    FL_ORCHID           = 20;
-    FL_DARKCYAN         = 21;
-    FL_DARKTOMATO       = 22;
-    FL_WHEAT            = 23;
-    FL_DARKORANGE       = 24;
-    FL_DEEPPINK         = 25;
-    FL_CHARTREUSE       = 26;
-    FL_DARKVIOLET       = 27;
-    FL_SPRINGGREEN      = 28;
-    FL_DOGERBLUE        = 29;
-
-    FL_FREE_COL1 = 256;
-    FL_FREE_COL2 = 257;
-    FL_FREE_COL3 = 258;
-    FL_FREE_COL4 = 259;
-    FL_FREE_COL5 = 260;
-    FL_FREE_COL6 = 261;
-    FL_FREE_COL7 = 262;
-    FL_FREE_COL8 = 263;
-    FL_FREE_COL9 = 264;
-    FL_FREE_COL10 = 265;
-    FL_FREE_COL11 = 266;
-    FL_FREE_COL12 = 267;
-    FL_FREE_COL13 = 268;
-    FL_FREE_COL14 = 269;
-    FL_FREE_COL15 = 270;
-    FL_FREE_COL16 = 271;
-
-FL_BUILT_IN_COLS  = FL_DOGERBLUE+1;
-FL_INACTIVE_COL =  FL_INACTIVE;
-
-{ Some aliases for the color. This is actually backwards ... }
-
-Const
-FL_GRAY16=FL_RIGHT_BCOL;
-FL_GRAY35      =     FL_BOTTOM_BCOL;
-FL_GRAY80      =     FL_TOP_BCOL;
-FL_GRAY90      =     FL_LEFT_BCOL;
-FL_GRAY63      =     FL_COL1;
-FL_GRAY75      =     FL_MCOL;
-FL_LCOL        =     FL_BLACK;
-
-{
- *  Pop-up menu item attributes. NOTE if more than 8, need to change
- *  choice and menu class where mode is kept by a single byte
- }
-    FL_PUP_NONE = 0;
-    FL_PUP_GREY = 1;
-    FL_PUP_BOX = 2;
-    FL_PUP_CHECK = 4;
-    FL_PUP_RADIO = 8;
-
-FL_PUP_GRAY     = FL_PUP_GREY;
-FL_PUP_TOGGLE   = FL_PUP_BOX;
-FL_PUP_INACTIVE = FL_PUP_GREY;
-
-type
- TFL_PUP_CB = Procedure  (p1 : Longint);        { call back prototype  } cdecl;
- PFL_PUP_CB = ^TFL_PUP_CB;
-
- TFL_PUP_ENTRY = record
-      TheText : pchar;          { label of a popup/menu item    }
-      CallBack : PFL_PUP_CB;            { the callback function         }
-      shortcut : pchar;             { hotkeys                       }
-      mode : longint;                   { FL_PUP_GRAY, FL_PUP_CHECK etc }
- end;
- PFL_PUP_ENTRY = ^TFL_PUP_ENTRY;
-
- TFL_MENU_ENTRY = TFL_PUP_ENTRY;
- PFL_MENU_ENTRY = ^TFL_MENU_ENTRY;
-
-{ Events that a form reacts to.  }
-type TFL_EVENT = Longint;
-Const { Possible values }
-    FL_NOEVENT          = 0;
-    FL_DRAW             = 1;
-    FL_PUSH             = 2;
-    FL_RELEASE          = 3;
-    FL_ENTER            = 4;
-    FL_LEAVE            = 5;
-    FL_MOUSE            = 6;
-    FL_FOCUS            = 7;
-    FL_UNFOCUS          = 8;
-    FL_KEYBOARD         = 9;
-    FL_MOTION           = 10;
-    FL_STEP             = 11;
-    FL_SHORTCUT         = 12;
-    FL_FREEMEM          = 13;
-    FL_OTHER            = 14;           { property, selection etc }
-    FL_DRAWLABEL        = 15;
-    FL_DBLCLICK         = 16;           { double click            }
-    FL_TRPLCLICK        = 17;           { triple click            }
-    FL_PS               = 18;           { dump a form into EPS    }
-
-const
-FL_MOVE=FL_MOTION;      { for compatibility }
-
-{ Resize policies }
-type TFL_RESIZE_T = Longint;
-
-const
-    FL_RESIZE_NONE = 0;
-    FL_RESIZE_X    = 1;
-    FL_RESIZE_Y    = 2;
-
-const
-    FL_RESIZE_ALL = FL_RESIZE_X or FL_RESIZE_Y;
-
-{ Keyboard focus control }
-type
-    TFL_KEY = Longint;
-
-Const { Possible values for FL_KEY_Normal }
-    FL_KEY_NORMAL = 1;          { normal keys(0-255) - tab +left/right }
-    FL_KEY_TAB = 2;             { normal keys + 4 direction cursor     }
-    FL_KEY_SPECIAL = 4;         { only needs special keys(>255)        }
-    FL_KEY_ALL = 7;             { all keys                             }
-
-    FL_ALT_VAL = (1 shl 17);    { alt + Key --> FL_ALT_VAL + key }
-
-{ Internal use }
-Type
-    TFL_FIND = Longint;
-Const
-    FL_FIND_INPUT       =0;
-    FL_FIND_AUTOMATIC   =1;
-    FL_FIND_MOUSE       =2;
-    FL_FIND_CANVAS      =3;
-    FL_FIND_KEYSPECIAL  =4;
-
-{******************************************************************
- * FONTS
- *****************************************************************}
-
-Const FL_MAXFONTS=32;   { max number of fonts }
-
-type TFL_TEXT_STYLE = Longint;
-Const
-    FL_INVALID_STYLE            = -1;
-    FL_NORMAL_STYLE             = 0;
-    FL_BOLD_STYLE               = 1;
-    FL_ITALIC_STYLE             = 2;
-    FL_BOLDITALIC_STYLE         = 3;
-
-    FL_FIXED_STYLE              = 4;
-    FL_FIXEDBOLD_STYLE          = 5;
-    FL_FIXEDITALIC_STYLE        = 6;
-    FL_FIXEDBOLDITALIC_STYLE    = 7;
-
-    FL_TIMES_STYLE              = 8;
-    FL_TIMESBOLD_STYLE          = 9;
-    FL_TIMESITALIC_STYLE        = 10;
-    FL_TIMESBOLDITALIC_STYLE    = 11;
-
-    { The following are derived and must differ by multiples of SHADOW,
-       i.e., (FL_ENGRAVED%SHADOW) == 0. All being 2^n has the benefit that
-       (lstyle | FL_SHADOW) == (lstyle + FL_SHADOW). }
-
-Const
-    FL_SHADOW_STYLE = (1 shl 9);
-    FL_ENGRAVED_STYLE = (1 shl 10);
-    FL_EMBOSSED_STYLE = (1 shl 11);
-
-
-Type TFL_FONT_STYLE= TFL_TEXT_STYLE;
-
-{ Standard sizes in XForms }
-Const
-FL_TINY_SIZE     =  8;
-FL_SMALL_SIZE    =  10;
-FL_NORMAL_SIZE   =  12;
-FL_MEDIUM_SIZE   =  14;
-FL_LARGE_SIZE    =  18;
-FL_HUGE_SIZE     =  24;
-
-FL_DEFAULT_SIZE = FL_SMALL_SIZE;
-
-{ Defines for compatibility }
-
-FL_TINY_FONT  = FL_TINY_SIZE;
-FL_SMALL_FONT =  FL_SMALL_SIZE;
-FL_NORMAL_FONT=  FL_NORMAL_SIZE;
-FL_MEDIUM_FONT=  FL_MEDIUM_SIZE;
-FL_LARGE_FONT =  FL_LARGE_SIZE;
-FL_HUGE_FONT  =  FL_HUGE_SIZE;
-
-FL_NORMAL_FONT1 =  FL_SMALL_FONT;
-FL_NORMAL_FONT2 =  FL_NORMAL_FONT;
-FL_DEFAULT_FONT =  FL_SMALL_FONT;
-
-
-const
-FL_BOUND_WIDTH = 3;     { Border width of boxes }
-
-cFL_BEGIN_GROUP  =  10000;
-cFL_END_GROUP    =  20000;
-{
- *  Definition of basic struct that holds an object
- }
-
-FL_CLICK_TIMEOUT = 350; { double click interval }
-
-Type
-
-TFL_pixmap = record
-    thepixmap : Tpixmap;
-    Thewin    : TWindow;
-    TheVisual : TVisual;
-    x,y       : TFL_Coord;
-    w, h      : word;
-    depth     : Longint;
-    dbl_background : TFL_COLOR;
-    pixel : TFL_COLOR;
-end;
-
-Pform     = ^TForm;
-
-{Pfl_pixmap = ^fl_pixmap;
-}
-
-Pflobjs    = ^Tflobjs;
-
-THandle = Function (p1 : Pflobjs; p2 : Longint ; p3 : TFL_Coord; p4 : TFL_Coord;p5 :  Longint ; p6 : pointer) : Longint; cdecl;
-PHandle = ^THandle;
-TObject_Callback = Procedure  (P1 : Pflobjs;p2 :  longint); cdecl;
-PObject_Callback = ^TObject_Callback;
-
-Tflobjs = record
-    form : PForm;               { the form this object belong        }
-    u_vdata : Pointer;
-    u_cdata : Pchar;
-    u_ldata : longint;
-
-    objclass : Longint ;                { class of object, button, slider etc }
-    thetype : Longint;          { type within the class              }
-    boxtype : Longint ;         { what kind of box type              }
-    x, y, w, h : TFL_Coord;     { obj. location and size             }
-    bw : TFL_Coord;
-    col1, col2 : TFL_color;     { colors of obj                      }
-    thelabel : pchar;           { object label                       }
-    lcol : TFL_COLOR;           { label color                        }
-    align : Longint;
-    lsize, lstyle : Longint;    { label size and style               }
-
-    shortcut : ^Longint;
-
-    handle     : PHandle;
-    object_callback : PObject_Callback;
-    argument : Longint;
-
-    spec          : pointer;    { instantiation                      }
-
-    prehandle  : PHandle;
-    posthandle : PHandle;
-
-
-    { re-configure preference }
-    resize    : cardinal;       { what to do if WM resizes the FORM     }
-    nwgravity : cardinal;       { how to re-position top-left corner    }
-    segravity : cardinal;       { how to re-position lower-right corner }
-
-    parent,child,nc : Pflobjs;
-    ischild : longint;
-
-    prev : pflobjs;             { prev. obj in form                  }
-    next : pflobjs;             { next. obj in form                  }
-
-    flpixmap      : Pointer;    { pixmap double buffering stateinfo  }
-    use_pixmap    : Longint;    { true to use pixmap double buffering }
-
-    double_buffer : Longint;    { only used by mesa/gl canvas        }
-
-    { some interaction flags }
-    pushed: Longint ;
-    focus: Longint ;
-    belowmouse: Longint ;
-    active: Longint ;                   { if accept event }
-    input: Longint ;
-    wantkey: Longint ;
-    radio: Longint ;
-    automatic: Longint ;
-    redraw: Longint ;
-    visible: Longint ;
-    clip: Longint ;
-    click_timeout : cardinal;
-    c_vdata : pointer;          { for class use }
-    c_cdata : pchar;            { For class use }
-    c_ldata : longint;          { for class use }
-    cspec_size : cardinal;
-    aux_col1, aux_col2 : TFL_COLOR;
-    dbl_background : TFL_COLOR;
-    how_return : longint;
-    reserved : array[0..5] of cardinal;
-    { the following are for application programs }
-end;
-
-TFL_OBJECT = TFlobjs;
-PFL_OBJECT = ^TFL_OBJECT;
-
-TCallback = Procedure (P1 : pflobjs; P2 : pointer); cdecl;
-PCallback = ^TCallback;
-{ callback function for an entire form }
-PFL_FORMCALLBACKPTR = PCallback;
-
-{ object callback function      }
-PFL_CALLBACKPTR = PCallBack;
-
-{ preemptive callback function  }
-PFL_RAW_CALLBACK = PCallback;
-
-{ at close (WM menu delete/close etc.) }
-PFL_FORM_ATCLOSE = PCallback;
-
-{ deactivate/activate callback }
-PFL_FORM_ATDEACTIVATE = PCallback;
-
-PFL_FORM_ATACTIVATE = PCallback;
-
-THandlePtr = Procedure ( p1 : PFL_Object; p2 : Longint; p3,p4 : TFL_COORD; p5 : Longint; p6 : pointer); cdecl;
-PHandlePTR = ^THandlePTR;
-
-PFL_HANDLEPTR = PHandlePTR;
-
-{
-extern FL_OBJECT *FL_EVENT;
-}
-{** FORM ***}
-
-PFL_FORM = ^TFL_FORM;
-
-Tform = record
-    fdui : Pointer;
-    u_vdata : pointer;          { for application         }
-    u_cdata : pchar;
-    u_ldata : longint;
-
-    thelabel : pchar;           { window title            }
-    window : cardinal;  { X resource ID for window }
-    x, y, w, h : TFL_COORD;     { current geometry info   }
-    hotx, hoty : TFL_COORD;     { hot-spot of the form    }
-
-    first,last,focusobj : pflobjs;
-
-    form_callback     : PFL_FORMCALLBACKPTR;
-    activate_callback : PFL_FORM_ATACTIVATE;
-    deactivate_callback: PFL_FORM_ATDEACTIVATE ;
-    form_cb_data, activate_data, deactivate_data : pointer;
-
-    key_callback,
-    push_callback,
-    crossing_callback,
-    motion_callback,
-    all_callback: PFL_RAW_CALLBACK ;
-
-    compress_mask : cardinal;
-    evmask : cardinal;
-
-    { WM_DELETE_WINDOW message handler }
-    close_callback : PFL_FORM_ATCLOSE ;
-    close_data : pointer;
-
-
-    flpixmap : pointer;         { back buffer             }
-
-    icon_pixmap : cardinal;
-    icon_mask : cardinal;
-
-    { interaction and other flags }
-    vmode : Longint ;                   { current X visual class  }
-    deactivated : Longint ;             { true if sensitive       }
-    use_pixmap : Longint ;              { true if dbl buffering   }
-    frozen : Longint ;                  { true if sync change     }
-    visible : Longint ;         { true if mapped          }
-    wm_border : Longint ;               { window manager info     }
-    prop : cardinal;            { other attributes        }
-    has_auto : Longint ;
-    top : Longint ;
-    sort_of_modal : Longint;
-    parent, child : PFL_FORM;
-    parent_obj : PFL_OBJECT;
-    reserved : array[0..9] of Longint;
-end;
-TFL_FORM = Tform;
-
-TFD_Any = record
-  form : PFL_FORM;
-  vdata : Pointer;
-  cdata : pchar;
-  ldata : longint;
-  end;
-
-PFD_ANY = ^TFD_ANY;
-
-
-{
- * Async IO stuff
- }
-
-const
-    FL_READ = 1;
-    FL_WRITE = 2;
-    FL_EXCEPT = 4;
-
-{ IO other than XEvent Q }
-Type
-
-TFL_IO_CALLBACK = Procedure (p1 :Longint ;p2 : pointer); cdecl;
-PFL_IO_CALLBACK = ^TFL_IO_CALLBACK;
-{ function definitions }
-Procedure fl_add_io_callback(p1 : Longint  ; p2 : word; p3 : PFL_IO_CALLBACK; p4 : pointer); cdecl;external;
-Procedure fl_remove_io_callback(p1 : Longint ;p2 :  word; p3 : PFL_IO_CALLBACK); cdecl;external;
-
-{ signals }
-type
-
-TFL_SIGNAL_HANDLER = Procedure (p1 : Longint ; p2 : pointer); cdecl;
-PFL_SIGNAL_HANDLER = ^TFL_SIGNAL_HANDLER ;
-
-Procedure fl_add_signal_callback(p1 : LongInt;p2 : PFL_SIGNAL_HANDLER;p3 : pointer); cdecl;external;
-Procedure fl_remove_signal_callback(p1 : Longint ); cdecl;external;
-Procedure fl_signal_caught(p1 :Longint ); cdecl;external;
-Procedure fl_app_signal_direct(p1 : Longint ); cdecl;external;
-
-Function fl_add_timeout (p1 : longint;p2 : PFL_SIGNAL_HANDLER;p3 : pointer) : longint; cdecl;external;
-Procedure fl_remove_timeout(p1 : Longint); cdecl;external;
-
-{  Some utility stuff }
-type
-
-TFL_VN_PAIR = record
-    val : Longint;
-    name : Pchar;
-end;
-
-PFL_VN_PAIR = ^TFL_VN_PAIR;
-
-Function fl_get_vn_value (p1 : PFL_VN_PAIR; p2 : pchar) : Longint; cdecl;external;
-Function fl_get_vn_name (p1 : PFL_VN_PAIR; p2 : Longint ) : Pchar; cdecl;external;
-Function fl_msleep (p1 : cardinal) : cardinal; cdecl;external;
-
-{
- *  Basic public routine prototypes
- }
-
-Procedure fl_library_version(p1,p2 : pointer ); cdecl;external;
-
-{* Generic routines that deal with FORMS *}
-
-Function fl_bgn_form(P1 : Longint ; P2,p3 : TFL_Coord) : PFL_Form; cdecl;external;
-Procedure fl_end_form; cdecl;external;
-Function fl_do_forms : PFL_OBJECT ; cdecl;external;
-Function fl_check_forms : PFL_OBJECT; cdecl;external;
-Function fl_do_only_forms : PFL_OBJECT; cdecl;external;
-Function fl_check_only_forms : PFL_OBJECT; cdecl;external;
-Procedure fl_freeze_form(P1 : PFL_FORM); cdecl;external;
-
-Procedure fl_set_focus_object( P1 : PFL_FORM;p2 : PFL_OBJECT); cdecl;external;
-Procedure fl_reset_focus_object( p1 : PFL_OBJECT); cdecl;external;
-
-{
-#define fl_set_object_focus   fl_set_focus_object
-}
-Function fl_set_form_atclose(p1 : PFL_FORM; p2 : PFL_FORM_ATCLOSE; p3 : pointer) : PFL_FORM_ATCLOSE ; cdecl;external;
-Function fl_set_atclose(p1 : PFL_FORM_ATCLOSE; p2:  pointer) : PFL_FORM_ATCLOSE ; cdecl;external;
-
-Function fl_set_form_atactivate(p1 : PFL_FORM; P2 : PFL_FORM_ATACTIVATE; P3 : pointer) : PFL_FORM_ATACTIVATE ; cdecl;external;
-Function fl_set_form_atdeactivate(p1 : PFL_FORM;p2 : PFL_FORM_ATDEACTIVATE;p3 : pointer) : PFL_FORM_ATDEACTIVATE ; cdecl;external;
-
-Procedure fl_unfreeze_form (p1 : PFL_FORM); cdecl;external;
-Procedure fl_deactivate_form(p1 : PFL_FORM); cdecl;external;
-Procedure fl_activate_form(p1 : PFL_FORM); cdecl;external;
-Procedure fl_deactivate_all_forms; cdecl;external;
-Procedure fl_activate_all_forms; cdecl;external;
-Procedure fl_freeze_all_forms; cdecl;external;
-Procedure fl_unfreeze_all_forms; cdecl;external;
-Procedure fl_scale_form(p1 : PFL_FORM;p2,p3 : double); cdecl;external;
-Procedure fl_set_form_position(p1 : PFL_FORM; p2,p3 : TFL_Coord); cdecl;external;
-Procedure fl_set_form_title(p1 : PFL_FORM; p2 : pchar); cdecl;external;
-
-Procedure fl_set_form_property(p1 : PFL_FORM; p2 : word); cdecl;external;
-Procedure fl_set_app_mainform( p1 : PFL_FORM); cdecl;external;
-Function fl_get_app_mainform : PFL_FORM; cdecl;external;
-Procedure fl_set_app_nomainform(P1 : Longint ); cdecl;external;
-
-Procedure fl_set_form_callback(p1 : PFL_FORM; P2 : PFL_FORMCALLBACKPTR; P3 : pointer); cdecl;external;
-{
-#define  fl_set_form_call_back    fl_set_form_callback
-}
-
-Procedure fl_set_form_size(p1 : PFL_FORM; p2,p3 : TFL_Coord); cdecl;external;
-Procedure fl_set_form_hotspot(p1 : PFL_FORM; p2,p3 : TFL_Coord); cdecl;external;
-Procedure fl_set_form_hotobject(p1 : PFL_FORM; p2 : PFL_OBJECT); cdecl;external;
-Procedure fl_set_form_minsize(p1 : PFL_FORM ; p2,p3 :TFL_Coord); cdecl;external;
-Procedure fl_set_form_maxsize(p1 : PFL_FORM; p2,p3 :TFL_Coord); cdecl;external;
-Procedure fl_set_form_event_cmask(p1 : PFL_FORM; p2 : cardinal); cdecl;external;
-Function fl_get_form_event_cmask(p1 : PFL_FORM) : cardinal; cdecl;external;
-
-Procedure fl_set_form_geometry(p1 : PFL_FORM; p2,p3,p4,p5 : TFL_Coord); cdecl;external;
-
-{
-#define fl_set_initial_placement fl_set_form_geometry
-}
-
-Function fl_show_form (p1 : PFL_FORM; p2,p3 : Longint ; p4 : pchar) : Longint; cdecl;external;
-Procedure fl_hide_form(p1 : PFL_FORM); cdecl;external;
-Procedure fl_free_form(p1 : PFL_FORM); cdecl;external;
-Procedure fl_redraw_form(p1 : PFL_FORM); cdecl;external;
-Procedure fl_set_form_dblbuffer(p1 : PFL_FORM; p2 : Longint ); cdecl;external;
-Procedure fl_prepare_form_window(p1 : PFL_FORM; p2,p3 :  Longint ; p4 : pchar); cdecl;external;
-Procedure fl_show_form_window(p1 : PFL_FORM); cdecl;external;
-Function fl_adjust_form_size(p1 : PFL_FORM) : double; cdecl;external;
-Function fl_form_is_visibe (p1 : PFL_FORM) : Longint; cdecl;external;
-
-Function  fl_register_raw_callback(p1 : PFL_FORM; p2 : cardinal; P3 : PFL_RAW_CALLBACK): PFL_RAW_CALLBACK; cdecl;external;
-
-{
-#define fl_register_call_back fl_register_raw_callback
-}
-Function fl_bgn_group : PFL_OBJECT; cdecl;external;
-Function fl_end_group : PFL_OBJECT; cdecl;external;
-Procedure fl_addto_group (p1 : PFL_OBJECT); cdecl;external;
-
-{***** Routines that deal with FL_OBJECTS *******}
-
-Procedure fl_set_object_boxtype(p1 : PFL_OBJECT; p2 : Longint ); cdecl;external;
-Procedure fl_set_object_bw(p1 : PFL_OBJECT; p2 : Longint ); cdecl;external;
-Procedure fl_set_object_resize(p1 : PFL_OBJECT; p2 : word); cdecl;external;
-Procedure fl_set_object_gravity(p1 : PFL_OBJECT; p2,p3 : word ); cdecl;external;
-Procedure fl_set_object_lsize(p1 : PFL_OBJECT; p2 : Longint ); cdecl;external;
-Procedure fl_set_object_lstyle(p1 : PFL_OBJECT; p2 : Longint ); cdecl;external;
-Procedure fl_set_object_lcol(p1 : PFL_OBJECT; p2 : TFL_COLOR); cdecl;external;
-Procedure fl_set_object_return(p1 : PFL_OBJECT; p2 : Longint ); cdecl;external;
-Procedure fl_set_object_lalign(p1 : PFL_OBJECT; p2 : Longint ); { to be removed } cdecl;external;
-Procedure fl_set_object_shortcut(p1 : PFL_OBJECT; p2 : pchar;p3 : Longint ); cdecl;external;
-Procedure fl_set_object_shortcutkey(p1 : PFL_OBJECT; p2 :  word); cdecl;external;
-Procedure fl_set_object_dblbuffer(p1 : PFL_OBJECT; p2 :  Longint ); cdecl;external;
-Procedure fl_set_object_color(p1 : PFL_OBJECT; p2 : TFL_COLOR;p3 : TFL_COLOR); cdecl;external;
-Procedure fl_set_object_label(p1 : PFL_OBJECT; p2 :  pchar); cdecl;external;
-Procedure fl_set_object_position(p1 : PFL_OBJECT; p2,p3 :TFL_Coord); cdecl;external;
-Procedure fl_set_object_size(p1 : PFL_OBJECT; p2,p3 :TFL_Coord); cdecl;external;
-Procedure fl_set_object_automatic(p1 : PFL_OBJECT; p2 :  Longint ); cdecl;external;
-Procedure fl_draw_object_label(p1 : PFL_OBJECT);  cdecl;external;
-Procedure fl_draw_object_label_outside(p1 : PFL_OBJECT);  cdecl;external;
-Function fl_get_object_component(p1 : PFL_OBJECT; p2,p3,p4 : Longint): PFL_OBJECT; cdecl;external;
-
-{
-#define  fl_set_object_dblclick(p1 : ob; p2 : timeout)  (p1 : ob)->click_timeout = (p1 : timeout); p3 :p2 :
-}
-Procedure fl_set_object_geometry(p1 : PFL_OBJECT; p2,p3,p4,p5 :TFL_Coord); cdecl;external;
-
-
-Procedure fl_fit_object_label(p1 : PFL_OBJECT; p2,p3 :TFL_Coord); cdecl;external;
-
-{ no much get (p1 : yet ?) }
-
-Procedure fl_get_object_geometry(p1 : PFL_OBJECT; p2,p3,p4,p5 : PFL_Coord ); cdecl;external;
-Procedure fl_get_object_position(p1 : PFL_OBJECT; p2,p3 :PFL_COORD); cdecl;external;
-
-{ this one takes into account the label }
-Procedure fl_get_object_bbox (p1 : PFL_OBJECT; p2,p3,p4,p5 : PFL_COORD); cdecl;external;
-
-Procedure fl_call_object_callback(p1 : PFL_OBJECT);  cdecl;external;
-Function fl_set_object_prehandler(p1 : PFL_OBJECT; p2 : PFL_HANDLEPTR) : PFL_HANDLEPTR ; cdecl;external;
-Function fl_set_object_posthandler(p1 : PFL_OBJECT; p2 : PFL_HANDLEPTR): PFL_HANDLEPTR ; cdecl;external;
-Function fl_set_object_callback(p1 : PFL_OBJECT; p2 : PFL_CALLBACKPTR; p3 :longint) : PFL_CALLBACKPTR ; cdecl;external;
-{
-#define fl_set_object_align   fl_set_object_lalign
-#define fl_set_call_back      fl_set_object_callback
-}
-Procedure fl_redraw_object(p1 : PFL_OBJECT); cdecl;external;
-Procedure fl_scale_object(p1 : PFL_OBJECT; p2 : double; p3 :double); cdecl;external;
-Procedure fl_show_object(p1 : PFL_OBJECT);  cdecl;external;
-Procedure fl_hide_object(p1 : PFL_OBJECT); cdecl;external;
-Procedure fl_free_object(p1 : PFL_OBJECT);   cdecl;external;
-Procedure fl_delete_object(p1 : PFL_OBJECT);   cdecl;external;
-Procedure fl_trigger_object(p1 : PFL_OBJECT);   cdecl;external;
-Procedure fl_activate_object(p1 : PFL_OBJECT);   cdecl;external;
-Procedure fl_deactivate_object(p1 : PFL_OBJECT); cdecl;external;
-
-Type TFL_ENUMERATEPTR = Procedure (p : pchar);  cdecl;
-     PFL_ENUMERATEPTR = ^TFL_ENUMERATEPTR;
-
-Procedure fl_enumerate_fonts (p1 : PFL_ENUMERATEPTR; p2 :  longint); cdecl;external;
-
-Function  fl_set_font_name(p1 : Longint ; p2 :  pchar) : longint; cdecl;external;
-Procedure fl_set_font(p1 : Longint ; p2 :  Longint ); cdecl;external;
-
-{ routines that facilitate free object }
-
-Function fl_get_char_height(p1,p2 : Longint ; p3,p4 : pointer) : Longint ; cdecl;external;
-Function fl_get_char_width(p1,p2 :  Longint ) : Longint; cdecl;external;
-Function fl_get_string_height(p1 : Longint ; p2 : Longint ; p3 : pchar; p4 : Longint ; p5,p6 : pointer) : Longint ; cdecl;external;
-Function fl_get_string_width(p1 : Longint ; p2 : Longint ; p3 : pchar; p4 : Longint ) : Longint ; cdecl;external;
-Function fl_get_string_widthTAB(p1 : Longint ; p2 : Longint ; p3 : pchar; p4 : Longint ) : Longint ; cdecl;external;
-Function fl_get_string_dimension(p1 : Longint ; p2 : Longint ; p3 : pchar; p4 : Longint ; p5,p6 : pointer) : Longint ; cdecl;external;
-{
-#define fl_get_string_size  fl_get_string_dimension
-}
-Procedure fl_get_align_xy(p1,p2,p3,p4,p5,p6,p7,p8,p9 : Longint ; p10,p11 : pointer); cdecl;external;
-
-Procedure fl_drw_text(p1 : Longint ; p2,p3,p4,p5 : TFL_Coord; p6 : TFL_COLOR; p7,p8 : Longint ; p9 : pchar); cdecl;external;
-
-Procedure fl_drw_text_beside(p1 : Longint ; p2,p3,p4,p5 : TFL_Coord; p6 : TFL_COLOR; p7,p8 : Longint ; p9 : pchar); cdecl;external;
-{
-#define fl_draw_text(p1 : a; p2 : x;y;w;h;c;st;sz;s)    \
-      (p1 : (p1 : (p1 : a) & FL_ALIGN_INSIDE) ? fl_drw_text:fl_drw_text_beside)\
-      (p1 : a; p2 : x;y;w;h;c;st;sz;s)
-}
-
-Procedure fl_drw_text_cursor(p1 : Longint ; p2,p3,p4,p5 : TFL_Coord;p6,p7,p8: Longint ; p9 : Pchar; p10,p11: Longint ); cdecl;external;
-
-Procedure fl_drw_box(p1 : Longint ; p2,p3,p4,p5 : TFL_Coord; p6 : TFL_COLOR; p7 : Longint ); cdecl;external;
-
-type
-
-FL_DRAWPTR = Procedure (p1,p2,p3,p4 : TFL_Coord; p5 : Longint ;p6: TFL_COLOR); cdecl;
-PFL_DRAWPTR = ^FL_DRAWPTR;
-
-Function fl_add_symbol(p1 : pchar; p2 : PFL_DRAWPTR; p3 :Longint ) : Longint ; cdecl;external;
-Function fl_draw_symbol(p1 : pchar; p2,p3,p4,p5 : TFL_Coord;p6 : TFL_COLOR) : Longint ; cdecl;external;
-
-const
-  FL_SLIDER_NONE = 0;
-  FL_SLIDER_BOX = 1;
-  FL_SLIDER_KNOB = 2;
-  FL_SLIDER_UP = 4;
-  FL_SLIDER_DOWN = 8;
-  FL_SLIDER_ALL = 15;
-
-Procedure fl_drw_slider (p1 :longint; p2,p3,P4,p5 : TFL_COORD; p6,p7 : TFL_COLOR;
-                         p8 : Longint; p9,p10 : double; P11 : pchar; p12,p13,p14 : Longint);cdecl;external;
-
-
-Function fl_mapcolor(p1 : TFL_COLOR; p2,p3,p4 : Longint ) : cardinal; cdecl;external;
-Function fl_mapcolorname(p1 : TFL_COLOR; p2 :  pchar) : longint; cdecl;external;
-{
-#define fl_mapcolor_name  fl_mapcolorname
-}
-Function fl_getmcolor(p1 : TFL_COLOR; p2,p3,p4 : pointer) : cardinal; cdecl;external;
-Procedure fl_free_colors(p1 : PFL_COLOR; p2 :  Longint ); cdecl;external;
-Procedure fl_free_pixels(p1 : pcardinal; p2 :  Longint ); cdecl;external;
-Procedure fl_set_color_leak(p1 : Longint );  cdecl;external;
-Function fl_get_pixel(p1 : TFL_COLOR): cardinal;  cdecl;external;
-{
-#define fl_get_flcolor   fl_get_pixel
-}
-Procedure fl_get_icm_color(p1 : TFL_COLOR; p2,p3,p4 : pointer); cdecl;external;
-Procedure fl_set_icm_color(p1 : TFL_COLOR; p2,p3,p4 : Longint ); cdecl;external;
-
-Procedure fl_color(p1 : TFL_COLOR); cdecl;external;
-Procedure fl_bk_color(p1 : TFL_COLOR);  cdecl;external;
-Procedure fl_textcolor(p1 : TFL_COLOR);  cdecl;external;
-Procedure fl_bk_textcolor(p1 : TFL_COLOR);  cdecl;external;
-Procedure fl_set_gamma(p1,p2,p3 :double); cdecl;external;
-
-Procedure fl_show_errors(p1 : Longint );  cdecl;external;
-
-{ Some macros }
-{
-#define FL_max(p1 : a; p2 : b)      (p1 :  (p1 : a) > (p1 : b) ? (p1 : a):(p1 : b) )
-#define FL_min(p1 : a; p2 : b)      (p1 :  (p1 : a) < (p1 : b) ? (p1 : a):(p1 : b) )
-#define FL_abs(p1 : a)        (p1 :  (p1 : a) > 0 ? (p1 : a):(p1 : -(p1 : a)))
-#define FL_nint(p1 : a)       (p1 :  (p1 : a) > 0 ? (p1 : (p1 : a) + 0.5):(p1 : (p1 : a) - 0.5))
-}
-type TFL_FSCB = Function (p1 : pchar; p2 : pointer) : Longint; cdecl;
-PFL_FSCB = ^TFL_FSCB;
-
-{ utilities for new objects }
-var fl_current_form : PFL_FORM; cvar;external;
-Procedure fl_add_object(p1 : PFL_FORM; p2 : PFL_OBJECT); cdecl;external;
-Procedure fl_addto_form(p1 : PFL_FORM);  cdecl;external;
-Function fl_make_object(p1 : Longint ; p2,p3,p4,p5,p6 : TFL_Coord; p7 : pchar; P8 : PFL_HANDLEPTR) : PFL_OBJECT; cdecl;external;
-
-Procedure fl_set_coordunit(p1 : Longint ); cdecl;external;
-Function fl_get_coordunit : Longint ;  cdecl;external;
-Procedure fl_set_border_width(p1 : Longint );  cdecl;external;
-Function fl_get_border_width : Longint ;   cdecl;external;
-Procedure fl_set_scrollbar_type (p1 :longint); cdecl;external;
-
-Procedure fl_flip_yorigin;  cdecl;external;
-
-Procedure fl_ringbell ( p1 : longint); cdecl;external;
-Procedure fl_gettime (p1,p2 : Plongint); cdecl;external;
-Function fl_whoami : pchar; cdecl;external;
-Function fl_now : pchar; cdecl;external;
-Function fl_mouse_button : longint; cdecl;external;
-
-
-{ this gives more flexibility for future changes }
-
-{
-#define fl_free       free
-#define fl_malloc     malloc
-#define fl_calloc     calloc
-#define fl_realloc    realloc
-}
-Const  FL_MAX_MENU_CHOICE_ITEMS = 128;
-
-{
- *
- *  X Window dependent stuff
- *
- }
-
-{ Still need conversion !! }
-{
-#include <X11/Xatom.h>
-#include <X11/keysym.h>
-}
-Const
-
- FL_MINDEPTH = 1;
-
-
-{ FL_xxx does not do anything anymore; but kept for compatibility }
-    FL_illegalVisual = -1;
-    FL_StaticGray = StaticGray;
-    FL_GrayScale = GrayScale;
-    FL_StaticColor = StaticColor;
-    FL_PseudoColor = PseudoColor;
-    FL_TrueColor = TrueColor;
-    FL_DirectColor = DirectColor;
-    FL_DefaultVisual = 10;      { special request }
-
-    FL_North = NorthGravity;
-    FL_NorthEast = NorthEastGravity;
-    FL_NorthWest = NorthWestGravity;
-    FL_South = SouthGravity;
-    FL_SouthEast = SouthEastGravity;
-    FL_SouthWest = SouthWestGravity;
-    FL_East = EastGravity;
-    FL_West = WestGravity;
-    FL_NoGravity = ForgetGravity;
-    FL_ForgetGravity = ForgetGravity;
-
-{
-#define FL_is_gray(p1 : v)  (p1 : v==GrayScale || v==StaticGray)
-#define FL_is_rgb(p1 : v)   (p1 : v==TrueColor || v==DirectColor)
-}
-
-{
- * Internal colormap size. Not really very meaningful as fl_mapcolor
- * and company allow color "leakage"; that is; although only FL_MAX_COLS
- * are kept in the internal colormap; the server might have substantially
- * more colors allocated
- }
-
-FL_MAX_COLS =  1024;
-
-{
- * FL graphics state information. Some are redundant.
- }
-
-type
-TFL_STATE = record
-    xvinfo : PXVisualInfo;
-    cur_fnt : PXFontStruct;     { current font in default GC       }
-    colormap : TColormap ;              { colormap valid for xvinfo        }
-    trailblazer : TWindow ;             { a valid window for xvinfo        }
-    vclass, depth,              { visual class and color depth     }
-    rgb_bits,           { primary color resolution         }
-    dithered,           { true if dithered color           }
-    pcm : Longint;                      { true if colormap is not shared   }
-    gc : Array [0..16] of TGC;                  { working GC                       }
-    textgc : array [0..16] of TGC;              { GC used exclusively for text     }
-    dimmedGC : TGC;             { A GC having a checkboard stipple }
-    lut :array [0..FL_MAX_COLS] of cardinal;    { secondary lookup table         }
-    rshift : word;
-    rmask, rbits : Longint;
-    gshift : word;
-    gmask,gbits : Longint ;
-    bshift : word;
-    bmask, bbits : Longint ;
-end;
-PFL_State = ^TFL_State;
-
-{
-#define FL_State FL_STATE
-}
-
-{**** Global variables *****}
-
-Var
-
-fl_display : PDisplay;
-fl_screen : Longint;
-fl_root : TWindow;              { root window                }
-fl_vroot : TWindow;             { virtual root window        }
-fl_scrh : Longint;
-fl_scrw : Longint;      { screen dimension in pixels }
-fl_vmode : Longint ;
-
-{ current version only runs in single visual mode }
-{
-#define  fl_get_vclass(p1 : )        fl_vmode
-#define  fl_get_form_vclass(p1 : a)  fl_vmode
-}
-{
-fl_state[] : PFL_State ;
-fl_ul_magic_char : pchar;
-}
-
-Function fl_mode_capable(p1,p2 : longint ) : longint; cdecl;external;
-
-{
-#define fl_default_win(p1 : )       (p1 : fl_state[fl_vmode].trailblazer)
-#define fl_default_window(p1 : )    (p1 : fl_state[fl_vmode].trailblazer)
-}
-{
- * All pixmaps used by FL_OBJECT to simulate double buffering have the
- * following entries in the structure. TFL_Coord x;y are used to shift
- * the origin of the drawing routines
- }
-
-
-{ fonts related }
-Const
-FL_MAX_FONTSIZES=10;
-
-type
- FL_FONT = record
-    fs : array[0..FL_MAX_FONTSIZES] of PXFontStruct;    { cached fontstruct }
-    size : array [0..FL_MAX_FONTSIZES] of byte; { cached sizes      }
-    nsize : byte;               { cached so far     }
-    fname : Array[1..80] of char;               { without size info     }
-end;
-
-{
- * Some basic drawing routines
- }
-
-type TFL_POINT = TXPoint;
-     PFL_Point = ^TFL_Point;
-     TFL_RECT = TXRECTANGLE;
-     PFL_RECT = ^TFL_RECT;
-
-{ rectangles }
-Procedure fl_rectangle(p1 : Longint ; p2,p3,p4,p5 : TFL_Coord; p6 : TFL_COLOR); cdecl;external;
-Procedure fl_rectbound(p1,p2,p3,p4 : TFL_Coord;p5 : TFL_COLOR); cdecl;external;
-
-Procedure fl_rectf(x,y,w,h : TFL_COORD;c : TFL_COLOR);
-Procedure fl_rect(x,y,w,h : TFL_COORD;c : TFL_COLOR);
-
-
-{ rectangle with rounded-corners }
-Procedure fl_roundrectangle(p1 : Longint ; p2,p3,p4,p5 : TFL_Coord; p6 :TFL_COLOR); cdecl;external;
-
-{
-#define fl_roundrectf(p1 : x; p2 : y;w;h;c) fl_roundrectangle(p1 : 1; p2 : x;y;w;h;c)
-#define fl_roundrect(p1 : x; p2 : y;w;h;c) fl_roundrectangle(p1 : 0; p2 : x;y;w;h;c)
-}
-{ general polygon and polylines }
-Procedure fl_polygon(p1 : Longint ; p2 : PFL_POINT; p3 : Longint ; p4 : TFL_COLOR); cdecl;external;
-
-(*
-#define fl_polyf(p1 : p; p2 : n;c)  fl_polygon(p1 : 1; p2 : p; p3 : n; p4 : c)
-#define fl_polyl(p1 : p; p2 : n;c)  fl_polygon(p1 : 0; p2 : p; p3 : n; p4 : c)
-#define fl_polybound(p1 : p; p2 : n;c) do {fl_polyf(p1 : p; p2 : n;c);fl_polyl(p1 : p; p2 : n;FL_BLACK);}while(p1 : 0)
-*)
-
-Procedure fl_lines(p1 : TFL_POINT; p2 : Longint ; p3 :TFL_COLOR); cdecl;external;
-Procedure fl_line(p1,p2,p3,p4 : TFL_Coord; p5 : TFL_COLOR); cdecl;external;
-Procedure fl_point(p1,p2 : TFL_Coord; p3: TFL_COLOR); cdecl;external;
-Procedure fl_points(p1 : PFL_POINT; p2 : Longint; p3: TFL_COLOR); cdecl;external;
-
-{
-#define fl_simple_line fl_line
-}
-Procedure fl_dashedlinestyle(p1 : pchar; p2 :  Longint ); cdecl;external;
-Procedure fl_drawmode(p1 : Longint );  cdecl;external;
-
-{
-#define fl_diagline(p1 : x; p2 : y;w;h;c) fl_line(p1 : x; p2 : y;(p1 : x)+(p1 : w)-1; p2 : (p1 : y)+(p1 : h)-1; p2 : c)
-}
-{ line attributes }
-Const
-  FL_SOLID = 0;
-  FL_USERDASH = 1;
-  FL_USERDOUBLEDASH = 2;
-  FL_DOT = 3;
-  FL_DOTDASH = 4;
-  FL_DASH = 5;
-  FL_LONGDASH = 6;
-
-Procedure fl_linewidth(p1 : Longint );  cdecl;external;
-Procedure fl_linestyle(p1 : Longint );  cdecl;external;
-
-Function fl_get_linewidth : longint; cdecl;external;
-Function fl_get_linestyle : longint; cdecl;external;
-
-
-{* ellipses *}
-Procedure fl_oval(p1 : Longint ; p2,p3,p4,p5 : TFL_Coord; p6 : TFL_COLOR); cdecl;external;
-Procedure fl_ovalbound(p1,p2,p3,p4 : TFL_Coord; p5 : TFL_COLOR); cdecl;external;
-Procedure fl_ovalarc(p1 : Longint ; p2,p3,p4,p5 : TFL_Coord; p6,p7 : Longint; p8 : TFL_COLOR); cdecl;external;
-
-{
-#define fl_ovalf(p1 : x; p2 : y;w;h;c)     fl_oval(p1 : 1; p2 : x;y;w;h;c)
-#define fl_ovall(p1 : x; p2 : y;w;h;c)     fl_oval(p1 : 0; p2 : x;y;w;h;c)
-#define fl_oval_bound           fl_ovalbound
-
-#define fl_circf(p1 : x; p2 : y;r;col)  fl_oval(p1 : 1; p2 : (p1 : x)-(p1 : r); p2 : (p1 : y)-(p1 : r); p2 : 2*(p1 : r); p2 : 2*(p1 : r); p2 : col)
-#define fl_circ(p1 : x; p2 : y;r;col)   fl_oval(p1 : 0; p2 : (p1 : x)-(p1 : r); p2 : (p1 : y)-(p1 : r); p2 : 2*(p1 : r); p2 : 2*(p1 : r); p2 : col)
-}
-
-{ arcs }
-Procedure fl_pieslice(p1 : Longint ; p2,p3,p4,p5 : TFL_Coord;p6,p7 :Longint ; p8 : TFL_COLOR); cdecl;external;
-{
-#define fl_arcf(p1 : x; p2 : y;r;a1;a2;c)  fl_pieslice(p1 : 1; p2 : (p1 : x)-(p1 : r); p2 : (p1 : y)-(p1 : r); p2 : \
-                                (p1 : 2*(p1 : r)); p2 : (p1 : 2*(p1 : r)); p2 :  a1;a2;c)
-
-#define fl_arc(p1 : x; p2 : y;r;a1;a2;c)  fl_pieslice(p1 : 0; p2 : (p1 : x)-(p1 : r); p2 : (p1 : y)-(p1 : r); p2 :  \
-                               (p1 : 2*(p1 : r)); p2 : (p1 : 2*(p1 : r)); p2 :  a1;a2;c)
-}
-{ misc. stuff }
-Procedure fl_add_vertex(p1,p2 :  TFL_Coord); cdecl;external;
-Procedure fl_add_float_vertex(p1,p2 :  real); cdecl;external;
-Procedure fl_reset_vertex;  cdecl;external;
-Procedure fl_endline; cdecl;external;
-Procedure fl_endpolygon; cdecl;external;
-Procedure fl_endclosedline;  cdecl;external;
-
-{
-#define fl_bgnline       fl_reset_vertex
-#define fl_bgnclosedline fl_reset_vertex
-#define fl_bgnpolygon    fl_reset_vertex
-#define fl_v2s(p1 : v)        fl_add_vertex(p1 : v[0]; p2 :  v[1])
-#define fl_v2i(p1 : v)        fl_add_vertex(p1 : v[0]; p2 :  v[1])
-#define fl_v2f(p1 : v)        fl_add_float_vertex(p1 : v[0]; p2 :  v[1])
-#define fl_v2d(p1 : v)        fl_add_float_vertex(p1 : v[0]; p2 :  v[1])
-}
-
-{ high level drawing routines }
-Procedure fl_drw_frame(p1 : Longint ; p2,p3,p4,p5 : TFL_Coord;p6 : TFL_COLOR; p7 : Longint ); cdecl;external;
-Procedure fl_drw_checkbox(p1 : Longint ; p2,p3,p4,p5 : TFL_Coord;p6 : TFL_COLOR;p7 : Longint ); cdecl;external;
-
-{
- * Interfaces
- }
-Function fl_get_fontstruct(p1,p2 :  Longint ) : PXFontStruct; cdecl;external;
-{
-#define fl_get_font_struct fl_get_fontstruct
-#define fl_get_fntstruct fl_get_font_struct
-}
-
-Function fl_get_mouse(p1,p2 : PFL_COORD; p3 : pword) : TWindow; cdecl;external;
-Procedure fl_set_mouse(p1,p2 :  TFL_Coord); cdecl;external;
-Function fl_get_win_mouse(p1 : TWindow; p2,p3 : PFL_COORD; p4 : pword) : TWindow; cdecl;external;
-Function fl_get_form_mouse(p1 : PFL_FORM; p2,p3 : PFL_COORD; p4 : pWord) : TWindow; cdecl;external;
-Function fl_win_to_form(p1 : TWindow) : PFL_form;  cdecl;external;
-Procedure fl_set_form_icon(p1 : PFL_FORM; p2 : TPixmap; p3 :TPixmap); cdecl;external;
-
-{
-#define fl_raise_form(p1 : f) if(p1 : f->window) XRaiseWindow(p1 : fl_display; p2 : f->window)
-#define fl_lower_form(p1 : f) if(p1 : f->window) XLowerWindow(p1 : fl_display; p2 : f->window)
-}
-{
-#define fl_set_foreground(p1 : gc; p2 : c) XSetForeground(p1 : fl_display; p2 : gc;fl_get_pixel(p1 : c))
-#define fl_set_background(p1 : gc; p2 : c) XSetBackground(p1 : fl_display; p2 : gc;fl_get_pixel(p1 : c))
-}
-{ General windowing support }
-
-Function fl_wincreate(p1 : pchar) : TWindow;  cdecl;external;
-Function fl_winshow(p1 : TWindow) : TWindow;  cdecl;external;
-Function fl_winopen(p1 : pchar) : TWindow;  cdecl;external;
-Procedure fl_winhide(p1 : TWindow);  cdecl;external;
-Procedure fl_winclose(p1 : TWindow);   cdecl;external;
-Procedure fl_winset(p1 : TWindow);  cdecl;external;
-Function fl_winget : Twindow;  cdecl;external;
-
-Procedure fl_winresize(p1 : TWindow; p2,p3 :TFL_Coord); cdecl;external;
-Procedure fl_winmove(p1 : TWindow; p2,p3 :TFL_Coord); cdecl;external;
-Procedure fl_winreshape(p1 : TWindow; p2,p3,p4,p5 : TFL_Coord); cdecl;external;
-Procedure fl_winicon(p1 : TWindow; p2 : TPixmap; p3 :TPixmap); cdecl;external;
-Procedure fl_winbackground(p1 : TWindow; p2 :  cardinal); cdecl;external;
-Procedure fl_winstepunit(p1 : TWindow; p2,p3 :TFL_Coord); cdecl;external;
-Procedure fl_winisvalid(p1 : TWindow);  cdecl;external;
-Procedure fl_wintitle(p1 : TWindow; p2 :  pchar); cdecl;external;
-Procedure fl_winposition(p1,p2 :  TFL_Coord); cdecl;external;
-
-{
-#define fl_pref_winposition fl_winposition
-#define fl_win_background     fl_winbackground
-#define fl_set_winstepunit    fl_winstepunit
-}
-
-
-Procedure fl_winminsize(p1 : TWindow; p2,p3 :TFL_Coord); cdecl;external;
-Procedure fl_winmaxsize(p1 : TWindow; p2,p3 :TFL_Coord); cdecl;external;
-Procedure fl_winaspect(p1 : TWindow; p2,p3 :TFL_Coord); cdecl;external;
-Procedure fl_reset_winconstraints(p1 : TWindow);  cdecl;external;
-
-Procedure fl_winsize(p1,p2 :  TFL_Coord); cdecl;external;
-Procedure fl_initial_winsize(p1,p2 :  TFL_Coord); cdecl;external;
-{
-#define fl_pref_winsize  fl_winsize
-}
-Procedure fl_initial_winstate(p1 : Longint );  cdecl;external;
-
-Function fl_create_colormap(p1 : PXVisualInfo; p2 :  Longint ) : TColormap; cdecl;external;
-
-
-Procedure fl_wingeometry(p1,p2,p3,p4 : TFL_Coord); cdecl;external;
-{
-#define fl_pref_wingeometry  fl_wingeometry
-}
-Procedure fl_initial_wingeometry(p1,p2,p3,p4 : TFL_Coord); cdecl;external;
-
-{
-Procedure fl_noborder; cdecl;external;
-Procedure fl_transient; cdecl;external;
-}
-
-Procedure fl_get_winsize(p1 : TWindow; p2,p3 :PFL_COORD); cdecl;external;
-Procedure fl_get_winorigin(p1 : TWindow; p2,p3 :PFL_COORD); cdecl;external;
-Procedure fl_get_wingeometry(p1 : TWindow; p2,p3,p4,p5 : PFL_COORD); cdecl;external;
-
-{ for compatibility }
-{
-#define fl_get_win_size          fl_get_winsize
-#define fl_get_win_origin        fl_get_winorigin
-#define fl_get_win_geometry      fl_get_wingeometry
-#define fl_initial_winposition   fl_pref_winposition
-
-#define fl_get_display(p1 : )           fl_display
-#define FL_FormDisplay(p1 : form)       fl_display
-#define FL_ObjectDisplay(p1 : object)   fl_display
-}
-
-{ the window an object belongints }
-
-Function FL_ObjWin ( P : PFL_Object) : TWindow;
-
-{
-#define FL_OBJECT_WID  FL_ObjWin
-}
-
-{  all registerable events; including Client Message }
-const FL_ALL_EVENT = (KeyPressMask or KeyReleaseMask or
-                      ButtonPressMask or ButtonReleaseMask or
-                      EnterWindowMask or LeaveWindowMask or
-                      ButtonMotionMask or PointerMotionMask);
-
-{ Timer related }
-
- FL_TIMER_EVENT = $40000000;
-
-
-Function fl_XNextEvent(p1 : PXEvent) : Longint;  cdecl;external;
-Function fl_XPeekEvent(p1 : PXEvent) : Longint;  cdecl;external;
-Function fl_XEventsQueued(p1 : Longint ) : Longint;  cdecl;external;
-Procedure fl_XPutBackEvent(p1 : PXEvent);   cdecl;external;
-Function fl_last_event : PXEvent ;  cdecl;external;
-
-type
-TFL_APPEVENT_CB = Procedure (p1 : PXEvent; p2 : pointer); cdecl;
-PFL_APPEVENT_CB = ^TFL_APPEVENT_CB;
-
-Function fl_set_event_callback(p1 : PFL_APPEVENT_CB; p2 : pointer) : PFL_APPEVENT_CB ; cdecl;external;
-Function fl_set_idle_callback(p1 : PFL_APPEVENT_CB; p2 :  pointer) : PFL_APPEVENT_CB ; cdecl;external;
-Function fl_addto_selected_xevent(p1 : TWindow; p2 :  longint) : Cardinal; cdecl;external;
-Function fl_remove_selected_xevent(p1 : TWindow; p2 :  longint) : cardinal; cdecl;external;
-{
-#define fl_add_selected_xevent  fl_addto_selected_xevent
-}
-{
- * Group some WM stuff into a structure for easy maintainance
- }
-const
-    FL_WM_SHIFT = 1;
-    FL_WM_NORMAL = 2;
-
-type TFL_WM_STUFF = record
-    rpx, rpy,           { reparenting offset for full border }
-    trpx, trpy,         { reparenting offset for transient   }
-    bw,                 { additional border                  }
-    rep_method : Longint;               { 1 for shifting; 2 for normal       }
-    pos_request : word; { USPOSITION or PPOSITION            }
-end;
-PFL_WM_STUFF = ^TFL_WM_STUFF;
-
-
-Function fl_add_event_callback(p1 : TWindow; p2 :  Longint ; p3 : PFL_APPEVENT_CB; p4 : pointer) : PFL_APPEVENT_CB ; cdecl;external;
-
-Procedure fl_remove_event_callback(p1 : TWindow; p2 :  Longint ); cdecl;external;
-Procedure fl_activate_event_callbacks(p1 : TWindow);  cdecl;external;
-
-Function fl_print_xevent_name(p1 : pchar; p2 : PXEvent) : PXEvent; cdecl;external;
-
-{
-#define metakey_down(p1 : mask)     (p1 : (p1 : mask) & Mod1Mask)
-#define shiftkey_down(p1 : mask)    (p1 : (p1 : mask) & ShiftMask)
-#define controlkey_down(p1 : mask)  (p1 : (p1 : mask) & ControlMask)
-#define button_down(p1 : mask)      (p1 : (p1 : (p1 : mask) & Button1Mask) || \
-                               (p1 : (p1 : mask) & Button2Mask) || \
-                               (p1 : (p1 : mask) & Button3Mask))
-#define fl_keypressed          fl_keysym_pressed
-}
-{***************** Resources **************}
-
-
-{ bool is Longint . FL_NONE is defined elsewhere }
-const
-    FL_NONE   = 0;
-    FL_SHORT  = 10;
-    FL_BOOL   = 11;
-    FL_INT    = 12;
-    FL_LONG   = 13;
-    FL_FLOAT  = 14;
-    FL_STRING = 15;
-
-Type  TFL_RTYPE = Longint;
-
-TFL_RESOURCE = record
-    res_name,                   { resource name                        }
-    res_class : Pchar;          { resource class                       }
-    rtype : TFL_RTYPE;          { FL_INT; FL_FLOAT; FL_BOOL;FL_STRING  }
-    thevar : pointer;           { address for the variable             }
-    defval : pchar;             { default setting in string form       }
-    bytes : Longint             { used only for strings                }
-end;
-PFL_RESOURCE = ^TFL_RESOURCE;
-
-Type
- TFL_CMD_OPT = TXrmOptionDescRec;
- PFL_CMD_OPT = ^TFL_CMD_OPT;
-
-Function fl_initialize(p1 : pointer; p2 : ppchar; p3 :pchar; p4 : PFL_CMD_OPT; p5 : Longint ) : Pdisplay; cdecl;external;
-Procedure fl_finish;   cdecl;external;
-
-{ addfromhere }
-
-Function fl_get_resource(p1 : pchar; p2 :  pchar; p3 : TFL_RTYPE; p4 : pchar; p5 : pointer; p6 :Longint ) : pchar; cdecl;external;
-Procedure fl_set_resource(p1 : pchar; p2 :  pchar); cdecl;external;
-
-Procedure fl_get_app_resources(p1 : PFL_resource; p2 : Longint ); cdecl;external;
-Procedure fl_set_graphics_mode(p1 : Longint ; p2 :  Longint ); cdecl;external;
-Procedure fl_set_visualID(p1 : longint);   cdecl;external;
-Function fl_keysym_pressed(p1 : TKeySym) : Longint;  cdecl;external;
-
-{
-#define buttonLabelSize  buttonFontSize
-#define sliderLabelSize  sliderFontSize
-#define inputLabelSize   inputFontSize
-}
-{ All Form control variables. Named closely as its resource name }
-Type TFL_IOPT =  record
-    rgamma, ggamma, bgamma : longint; { MUST BE FLOAT(single) !!! }
-    debug, sync,
-    depth, vclass, doubleBuffer,
-    ulPropWidth, ulThickness,   { underline stuff       }
-    buttonFontSize,
-    sliderFontSize,
-    inputFontSize,
-    browserFontSize,
-    menuFontSize,
-    choiceFontSize,
-    labelFontSize,              { all other labels fonts }
-    pupFontSize, pupFontStyle,  { font for pop-up menus  }
-    privateColormap,
-    sharedColormap,
-    standardColormap,
-    ScrollBarType,
-    backingStore,
-    coordUnit,
-    borderWidth,
-    safe : Longint ;
-    rgbfile : pchar;            { where RGB file is     }
-    vname : array [0..23] of char;
-end;
-PFL_IOPT = ^TFL_IOPT;
-
-
-Const
-
-{ program default masks }
-
-    FL_PDDepth = 1 shl 1 ;
-    FL_PDClass = 1 shl 2 ;
-    FL_PDDouble = 1 shl 3 ;
-    FL_PDSync = 1 shl 4 ;
-    FL_PDPrivateMap = 1 shl 5 ;
-    FL_PDLeftScrollBar = 1 shl 6 ;
-    FL_PDPupFontSize = 1 shl 7 ;
-    FL_PDButtonFontSize = 1 shl 8 ;
-    FL_PDInputFontSize = 1 shl 9 ;
-    FL_PDSliderFontSize = 1 shl 10 ;
-    FL_PDVisual = 1 shl 11 ;
-    FL_PDULThickness = 1 shl 12 ;
-    FL_PDULPropWidth = 1 shl 13 ;
-    FL_PDBS = 1 shl 14 ;
-    FL_PDCoordUnit = 1 shl 15 ;
-    FL_PDDebug = 1 shl 16 ;
-    FL_PDSharedMap = 1 shl 17 ;
-    FL_PDStandardMap = 1 shl 18 ;
-    FL_PDBorderWidth = 1 shl 19 ;
-    FL_PDSafe = 1 shl 20 ;
-    FL_PDMenuFontSize = 1 shl 21 ;
-    FL_PDBrowserFontSize = 1 shl 22 ;
-    FL_PDChoiceFontSize = 1 shl 23 ;
-    FL_PDLabelFontSize = 1 shl 24;
-    FL_PDButtonLabelSize = FL_PDButtonFontSize;
-    FL_PDSliderLabelSize = FL_PDSliderFontSize;
-    FL_PDInputLabelSize  = FL_PDInputFontSize;
-    FL_PDButtonLabel  = FL_PDButtonLabelSize;
-
-Procedure fl_set_defaults(p1 : cardinal; p2 :  PFL_IOPT); cdecl;external;
-Procedure fl_set_tabstop(p1 : pchar);  cdecl;external;
-Procedure fl_get_defaults(p1 : PFL_IOPT);  cdecl;external;
-Function fl_get_visual_depth : Longint;  cdecl;external;
-Function fl_vclass_name(p1 : Longint ) : pchar;  cdecl;external;
-Function fl_vclass_val(p1 : pchar) : Longint ;  cdecl;external;
-Procedure fl_set_ul_property(p1 : Longint ; p2 :  Longint ); cdecl;external;
-Procedure fl_set_clipping(p1 : TFL_Coord; p2 : TFL_Coord; p3 : TFL_Coord; p4 : TFL_Coord); cdecl;external;
-Procedure fl_set_gc_clipping(p1 : TGC; p2 : TFL_Coord; p3 : TFL_Coord; p4 : TFL_Coord; p5 : TFL_Coord); cdecl;external;
-Procedure fl_unset_gc_clipping(p1 : TGC);  cdecl;external;
-Procedure fl_set_clippings(p1 : PFL_RECT; p2 :  Longint ); cdecl;external;
-Procedure fl_unset_clipping;  cdecl;external;
-
-Function fl_textgc : TGC; cdecl;external;
-{
-#define fl_set_text_clipping(p1 : a; p2 : b;c;d)   fl_set_gc_clipping(p1 : fl_textgc; p2 : a;b;c;d)
-#define fl_unset_text_clipping(p1 : ) fl_unset_gc_clipping(p1 : fl_textgc)
-}
-
-Const
- FL_NORMAL_BITMAP = 0;
-
-{**** Defaults ****}
-FL_BITMAP_BOXTYPE       =FL_NO_BOX;
-FL_BITMAP_COL1          =FL_COL1;       { background of bitmap }
-FL_BITMAP_COL2          =FL_COL1;       { not used currently   }
-FL_BITMAP_LCOL          =FL_LCOL;       { foreground of bitmap }
-FL_BITMAP_ALIGN         =FL_ALIGN_BOTTOM;
-
-{**** Others   ****}
-
-{FL_BITMAP_MAXSIZE      = 128*128;}
-
-{**** Routines ****}
-Function fl_create_bitmap(p1 : Longint ; p2 : TFL_Coord; p3 : TFL_Coord; p4 : TFL_Coord; p5 : TFL_Coord; p6 : pchar) : PFL_OBJECT; cdecl;external;
-Function fl_add_bitmap(p1 : Longint ; p2 : TFL_Coord; p3 : TFL_Coord; p4 : TFL_Coord; p5 : TFL_Coord; p6 : pchar) : PFL_OBJECT; cdecl;external;
-Procedure fl_set_bitmap_data(p1 : PFL_OBJECT; p2 : Longint ; p3 : Longint ; p4 : pointer); cdecl;external;
-Procedure fl_set_bitmap_file(p1 : PFL_OBJECT; p2 :  pchar); cdecl;external;
-Function fl_read_bitmapfile(p1 : TWindow; p2 :  pchar; p3,p4 : pword; p5,p6 : pointer) : TPixmap ; cdecl;external;
-
-{
-#define fl_create_from_bitmapdata(p1 : win; p2 : data; p3 : w; p4 : h)\
-                   XCreateBitmapFromData(p1 : fl_get_display(p1 : ); p2 : win; p3 :\
-                   (p1 : char *)data; p2 : w; p3 :h)
-#define fl_set_bitmap_datafile fl_set_bitmap_file
-}
-
-{ PIXMAP stuff }
-
-Const
-FL_NORMAL_PIXMAP   = 0;
-
-Function fl_create_pixmap(p1 : Longint ; p2,p3,p4,p5 : TFL_Coord; p6  :pchar) : PFL_OBJECT; cdecl;external;
-Function fl_add_pixmap(p1 : Longint ; p2,p3,p4,p5 : TFL_Coord;p6 : pchar) : PFL_OBJECT; cdecl;external;
-
-Procedure fl_set_pixmap_data(p1 : PFL_OBJECT; p2 :  ppchar); cdecl;external;
-Procedure fl_set_pixmap_file(p1 : PFL_OBJECT; p2 :  pchar); cdecl;external;
-Procedure fl_set_pixmap_align(p1 : PFL_OBJECT; p2 : Longint ; p3 : Longint ; p4 : Longint ); cdecl;external;
-Procedure fl_set_pixmap_pixmap(p1 : PFL_OBJECT; p2 : TPixmap; p3 :TPixmap); cdecl;external;
-Procedure fl_set_pixmap_colorcloseness(p1 : Longint ; p2 : Longint ; p3 :Longint ); cdecl;external;
-Procedure fl_free_pixmap_pixmap(p1 : PFL_OBJECT);  cdecl;external;
-Function fl_get_pixmap_pixmap(p1 : PFL_OBJECT; p2 : PPixmap; p3 : PPixmap) : TPixmap ; cdecl;external;
-
-Function fl_read_pixmapfile(p1 : TWindow; p2 :  pchar;p3,p4 : pword; p5 : PPixmap;p6,p7 : pointer; p8 : TFL_COLOR)  : TPixmap ; cdecl;external;
-Function fl_create_from_pixmapdata(p1 : TWindow; p2 :  ppchar;p3,p4 : pword; p5 : PPixmap;p6,p7 : pointer; p8 : TFL_COLOR) : TPixmap ; cdecl;external;
-{
-#define fl_free_pixmap(p1 : id)  if(p1 : id != None) XFreePixmap(p1 : fl_display; p2 :  id);
-}
-
-Function fl_create_box(p1 : Longint ; p2,p3,p4,p5 : TFL_Coord; p6 : pchar) : PFL_OBJECT; cdecl;external;
-Function fl_add_box(p1 : Longint ; p2,p3,p4,p5 : TFL_Coord;p6 : pchar) : PFL_OBJECT; cdecl;external;
-
-Type TFL_BROWSER_TYPE = Longint;
-
-Const
-    FL_NORMAL_BROWSER = 0;
-    FL_SELECT_BROWSER = 1;
-    FL_HOLD_BROWSER   = 2;
-    FL_MULTI_BROWSER  = 3;
-
-{**** Defaults ****}
-
- FL_BROWSER_BOXTYPE     = FL_DOWN_BOX;
- FL_BROWSER_COL1        = FL_COL1;
- FL_BROWSER_COL2        = FL_YELLOW;
- FL_BROWSER_LCOL        = FL_LCOL;
- FL_BROWSER_ALIGN       = FL_ALIGN_BOTTOM;
-
-{**** Others   ****}
-
- FL_BROWSER_SLCOL       = FL_COL1;
- FL_BROWSER_LINELENGTH  = 1024;
- FL_BROWSER_FONTSIZE    = FL_SMALL_FONT;
-
-{ as of .86
- FL_SCROLLBAR_OFF = 0;
- FL_SCROLLBAR_ON = 1;
- FL_SCROLLBAR_ALWAYS_ON = 2;
-}
-
-{**** Routines ****}
-
-Function fl_create_browser(p1 : Longint ; p2,p3,p4,p5 : TFL_Coord;p6 : pchar) : PFL_OBJECT; cdecl;external;
-Function fl_add_browser(p1 : Longint ; p2,p3,p4,p5 : TFL_Coord;p6:  pchar) : PFL_OBJECT; cdecl;external;
-Procedure fl_clear_browser(p1 : PFL_OBJECT); cdecl;external;
-Procedure fl_add_browser_line(p1 : PFL_OBJECT; p2 :  pchar); cdecl;external;
-Procedure fl_addto_browser(p1 : PFL_OBJECT; p2 :  pchar); cdecl;external;
-Procedure fl_addto_browserchars(p1 : PFL_OBJECT; p2 :  pchar); cdecl;external;
-
-Procedure fl_insert_browser_line(p1 : PFL_OBJECT; p2 : Longint ; p3 :pchar); cdecl;external;
-Procedure fl_delete_browser_line(p1 : PFL_OBJECT; p2 :  Longint ); cdecl;external;
-Procedure fl_replace_browser_line(p1 : PFL_OBJECT; p2 : Longint ; p3 :pchar); cdecl;external;
-Function fl_get_browser_line(p1 : PFL_OBJECT; p2 :  Longint  ) : pchar; cdecl;external;
-Function fl_load_browser(p1 : PFL_OBJECT; p2 :  pchar ) : Longint ; cdecl;external;
-
-Procedure fl_select_browser_line(p1 : PFL_OBJECT; p2 :  Longint ); cdecl;external;
-Procedure fl_deselect_browser_line(p1 : PFL_OBJECT; p2 :  Longint ); cdecl;external;
-Procedure fl_deselect_browser(p1 : PFL_OBJECT);  cdecl;external;
-Function fl_isselected_browser_line(p1 : PFL_OBJECT; p2 :  Longint  ) : Longint ; cdecl;external;
-
-Function fl_get_browser_topline(p1 : PFL_OBJECT ) : Longint ;  cdecl;external;
-Function fl_get_browser(p1 : PFL_OBJECT ) : Longint ; cdecl;external;
-Function fl_get_browser_maxline(p1 : PFL_OBJECT ) : Longint ;  cdecl;external;
-Function fl_get_browser_screenlines(p1 : PFL_OBJECT ) : Longint ; cdecl;external;
-
-Procedure fl_set_browser_topline(p1 : PFL_OBJECT; p2 :  Longint ); cdecl;external;
-Procedure fl_set_browser_fontsize(p1 : PFL_OBJECT; p2 :  Longint ); cdecl;external;
-Procedure fl_set_browser_fontstyle(p1 : PFL_OBJECT; p2 :  Longint ); cdecl;external;
-Procedure fl_set_browser_specialkey(p1 : PFL_OBJECT; p2 :  Longint ); cdecl;external;
-Procedure fl_set_browser_vscrollbar(p1 : PFL_OBJECT; p2 :  Longint ); cdecl;external;
-Procedure fl_set_browser_hscrollbar(p1 : PFL_OBJECT; p2 :  Longint ); cdecl;external;
-Procedure fl_set_browser_leftslider(p1 : PFL_OBJECT; p2 :  Longint ); cdecl;external;
-Procedure fl_set_browser_line_selectable(p1 : PFL_OBJECT; p2 : Longint ; p3 :Longint ); cdecl;external;
-Procedure fl_get_browser_dimension(p1 : PFL_OBJECT; p2,p3,p4,p5 : PFL_COORD); cdecl;external;
-Procedure fl_set_browser_dblclick_callback(p1 : PFL_OBJECT; p2 : PFL_CALLBACKPTR; p3 :longint); cdecl;external;
-{
-#define fl_set_browser_leftscrollbar fl_set_browser_leftslider
-}
-Procedure fl_set_browser_xoffset(p1 : PFL_OBJECT; p2 :  TFL_Coord); cdecl;external;
-Procedure fl_set_browser_scrollbarsize (p1 : PFL_OBJECT;p2,p3 : longint); cdecl;external;
-Procedure fl_show_browser_line(p1 : PFL_OBJECT; p2 : longint); cdecl;external;
-Function fl_get_browser_xoffset(p1 : PFL_OBJECT) : TFL_Coord ; cdecl;external;
-
-type
- TFL_BUTTON_TYPE= Longint;
-
-Const
-    FL_NORMAL_BUTTON    = 0;
-    FL_PUSH_BUTTON      = 1;
-    FL_RADIO_BUTTON     = 2;
-    FL_HIDDEN_BUTTON    = 3;
-    FL_TOUCH_BUTTON     = 4;
-    FL_INOUT_BUTTON     = 5;
-    FL_RETURN_BUTTON    = 6;
-    FL_HIDDEN_RET_BUTTON= 7;
-    FL_MENU_BUTTON      = 8;
-
-type TFL_BUTTON_SPEC = record
-    pixmap,mask :  TPixmap;
-    bits_w, bits_h : Cardinal;
-    val,                        { whether on }
-    mousebut,           { mouse button that caused the push     }
-    timdel,                     { time since last touch (p1 : TOUCH buttons) }
-    event : Longint;                    { what event triggers redraw            }
-    cspecl : longint;           { reserved for class specfic stuff      }
-    cspecv : pointer;           { misc. things                          }
-    filename : pchar;
-end;
-TFL_BUTTON_STRUCT = TFL_BUTTON_SPEC;
-PFL_BUTTON_STRUCT = ^TFL_BUTTON_STRUCT;
-
-TFL_DrawButton = Procedure  (p1 : PFL_OBJECT);  cdecl;
-PFL_DrawButton  = ^TFL_DrawButton;
-TFL_CleanupButton = Procedure (p1 : PFL_BUTTON_STRUCT);  cdecl;
-PFL_CleanupButton= ^TFL_CleanupButton;
-
-Const
-FL_BUTTON_BOXTYPE       = FL_UP_BOX;
-FL_BUTTON_COL1          = FL_COL1;
-FL_BUTTON_COL2          = FL_COL1;
-FL_BUTTON_LCOL          = FL_LCOL;
-FL_BUTTON_ALIGN         = FL_ALIGN_CENTER;
-
-FL_BUTTON_MCOL1         = FL_MCOL;
-FL_BUTTON_MCOL2         = FL_MCOL;
-
-FL_BUTTON_BW            = FL_BOUND_WIDTH;
-
-{
- *  light button defaults
- }
-FL_LIGHTBUTTON_BOXTYPE  = FL_UP_BOX;
-FL_LIGHTBUTTON_COL1     = FL_COL1;
-FL_LIGHTBUTTON_COL2     = FL_YELLOW;
-FL_LIGHTBUTTON_LCOL     = FL_LCOL;
-FL_LIGHTBUTTON_ALIGN    = FL_ALIGN_CENTER;
-
-{**** Others   ****}
-
-FL_LIGHTBUTTON_TOPCOL   = FL_COL1;
-FL_LIGHTBUTTON_MCOL     = FL_MCOL;
-FL_LIGHTBUTTON_MINSIZE  = 12;
-
-{* round button defaults **}
-
-  FL_ROUNDBUTTON_BOXTYPE        = FL_NO_BOX;
-  FL_ROUNDBUTTON_COL1   = FL_MCOL;
-  FL_ROUNDBUTTON_COL2   = FL_YELLOW;
-  FL_ROUNDBUTTON_LCOL   = FL_LCOL;
-  FL_ROUNDBUTTON_ALIGN  = FL_ALIGN_CENTER;
-
-  FL_ROUNDBUTTON_TOPCOL = FL_COL1;
-  FL_ROUNDBUTTON_MCOL   = FL_MCOL;
-
-{* round3d button defaults **}
-
-  FL_ROUND3DBUTTON_BOXTYPE      = FL_NO_BOX;
-  FL_ROUND3DBUTTON3D_COL1       = FL_MCOL;
-  FL_ROUND3DBUTTON_COL2 = FL_YELLOW;
-  FL_ROUND3DBUTTON_LCOL = FL_LCOL;
-  FL_ROUND3DBUTTON_ALIGN        = FL_ALIGN_CENTER;
-
-  FL_ROUND3DBUTTON_TOPCOL       = FL_COL1;
-  FL_ROUND3DBUTTON_MCOL = FL_MCOL;
-
-{* check button defaults **}
-
-  FL_CHECKBUTTON_BOXTYPE        = FL_NO_BOX;
-  FL_CHECKBUTTON_COL1   = FL_COL1;
-  FL_CHECKBUTTON_COL2   = FL_YELLOW;
-  FL_CHECKBUTTON_LCOL   = FL_LCOL;
-  FL_CHECKBUTTON_ALIGN  = FL_ALIGN_CENTER;
-
-  FL_CHECKBUTTON_TOPCOL = FL_COL1;
-  FL_CHECKBUTTON_MCOL   = FL_MCOL;
-
-{* bitmap button defaults *}
-  FL_BITMAPBUTTON_BOXTYPE       = FL_UP_BOX;
-  FL_BITMAPBUTTON_COL1  = FL_COL1;      { bitmap background  }
-  FL_BITMAPBUTTON_COL2  = FL_BLUE;      { "focus" color       }
-  FL_BITMAPBUTTON_LCOL  = FL_LCOL;      { bitmap foreground   }
-  FL_BITMAPBUTTON_ALIGN = FL_ALIGN_BOTTOM;
-
-{* bitmap button defaults *}
-  FL_PIXMAPBUTTON_BOXTYPE       = FL_UP_BOX;
-  FL_PIXMAPBUTTON_COL1  = FL_COL1;      { box col    }
-  FL_PIXMAPBUTTON_COL2  = FL_YELLOW;    { bound rect }
-  FL_PIXMAPBUTTON_LCOL  = FL_LCOL;
-  FL_PIXMAPBUTTON_ALIGN = FL_ALIGN_BOTTOM;
-
-{**** Routines ****}
-
-Function fl_create_button(p1 : Longint ; p2,p3,p4,p5 : TFL_Coord;p6 : pchar) : PFL_OBJECT; cdecl;external;
-Function fl_create_roundbutton(p1 : Longint ; p2,p3,p4,p5 : TFL_Coord;p6 : pchar) : PFL_OBJECT; cdecl;external;
-Function fl_create_round3dbutton(p1 : Longint ; p2,p3,p4,p5 : TFL_Coord;p6 : pchar) : PFL_OBJECT; cdecl;external;
-Function fl_create_lightbutton(p1 : Longint ; p2,p3,p4,p5 : TFL_Coord;p6 : pchar) : PFL_OBJECT; cdecl;external;
-Function fl_create_checkbutton(p1 : Longint ; p2,p3,p4,p5 : TFL_Coord;p6 : pchar) : PFL_OBJECT; cdecl;external;
-Function fl_create_bitmapbutton(p1 : Longint ; p2,p3,p4,p5 : TFL_Coord;p6 : pchar) : PFL_OBJECT; cdecl;external;
-Function fl_create_pixmapbutton(p1 : Longint ; p2,p3,p4,p5 : TFL_Coord;p6 :  pchar) : PFL_OBJECT; cdecl;external;
-
-Function fl_add_roundbutton(p1 : Longint ; p2,p3,p4,p5 :TFL_Coord; p6:  pchar) : PFL_OBJECT; cdecl;external;
-Function fl_add_round3dbutton(p1 : Longint ; p2,p3,p4,p5 :TFL_Coord; p6:  pchar) : PFL_OBJECT; cdecl;external;
-
-Function fl_add_lightbutton(p1 : Longint ; p2,p3,p4,p5 :TFL_Coord; p6:  pchar) : PFL_OBJECT; cdecl;external;
-Function fl_add_checkbutton(p1 : Longint ; p2,p3,p4,p5 :TFL_Coord; p6:  pchar) : PFL_OBJECT; cdecl;external;
-Function fl_add_button(p1 : Longint ; p2,p3,p4,p5 :TFL_Coord; p6:  pchar) : PFL_OBJECT; cdecl;external;
-
-
-Procedure fl_set_bitmapbutton_data (p1 : PFL_OBJECT; p2,p3 : Longint ;   p4 : pchar); cdecl;external;
-Procedure fl_set_bitmapbutton_file (p1 : PFL_OBJECT; p2: pchar); cdecl;external;
-Function  fl_add_bitmapbutton (p1 : longint; p2,p3,p4,p5: TFL_Coord;p6 : pchar) : PFL_OBJECT; cdecl;external;
-
-{
-#define fl_set_bitmapbutton_datafile  fl_set_bitmapbutton_file
-}
-
-Function fl_add_pixmapbutton(p1 : Longint ; p2,p3,p4,p5 : TFL_Coord;p6 : pchar) : PFL_OBJECT; cdecl;external;
-Procedure fl_set_pixmapbutton_data(p1 : PFL_OBJECT; p2 :  ppchar);
-Procedure fl_set_pixmapbutton_file(p1 : PFL_OBJECT; p2 :  pchar);
-Procedure fl_set_pixmapbutton_align(p1 : PFL_OBJECT; p2 : Longint ; p3 : Longint ; p4 : Longint );
-Procedure fl_set_pixmapbutton_pixmap(p1 : PFL_OBJECT; p2 : TPixmap; p3 :TPixmap);
-Procedure fl_set_pixmapbutton_colorcloseness(p1 : Longint ; p2 : Longint ; p3 :Longint );
-Procedure fl_free_pixmapbutton_pixmap(p1 : PFL_OBJECT);
-Function fl_get_pixmapbutton_pixmap(p1 : PFL_OBJECT; p2 : PPixmap; p3 : PPixmap) : TPixmap;
-
-Function fl_get_button(p1 : PFL_OBJECT ) : Longint ;   cdecl;external;
-Procedure fl_set_button(p1 : PFL_OBJECT; p2 :  Longint ); cdecl;external;
-Function fl_get_button_numb(p1 : PFL_OBJECT ) : Longint ; cdecl;external;
-
-Procedure fl_set_button_shortcut(p1 : PFL_OBJECT; p2 : pchar;p3 : Longint );
-
-Function fl_create_generic_button(p1,p2 : Longint ; p3,p4,p5,p6 : TFL_Coord;p7 : pchar) : PFL_OBJECT; cdecl;external;
-Procedure fl_add_button_class(p1 : Longint ; p2 : PFL_DRAWBUTTON; p3 : PFL_CLEANUPBUTTON); cdecl;external;
-
-
-{
- *
- * Header for FL_CANVAS
- *
- }
-
-
-
-type TFL_CANVAS_TYPE = Longint;
-
-const
-    FL_NORMAL_CANVAS = 0;
-    FL_SCROLLED_CANVAS = 1;
-
-Type
-TFL_HANDLE_CANVAS = Procedure (P1 : PFL_OBJECT; P2 : TWindow; P3 : Longint ; P4 : Longint ;
-                                 P5 : PXEvent; P6 : pointer);cdecl;
-PFL_HANDLE_CANVAS = ^TFL_HANDLE_CANVAS;
-
-TFL_MODIFY_CANVAS_PROP = Procedure (p1 : PFL_OBJECT); cdecl;
-PFL_MODIFY_CANVAS_PROP = ^TFL_MODIFY_CANVAS_PROP;
-
-{******************* Default ********************}
-
-Const   FL_CANVAS_BOXTYPE  =  FL_DOWN_BOX;
-        FL_CANVAS_ALIGN    =  FL_ALIGN_TOP;
-
-
-{*********** Interfaces    ***********************}
-
-
-Function fl_create_generic_canvas(p1 : Longint; p2 : Longint ; p3,p4,p5,p6 : TFL_Coord; p7 : pchar) : PFL_OBJECT; cdecl;external;
-
-Function fl_add_canvas(p1 : Longint; p2,p3,p4,p5 : TFL_Coord; p6 : pchar): PFL_OBJECT; cdecl;external;
-
-Function fl_create_canvas(p1 : Longint; p2,p3,p4,p5 : TFL_Coord; p6 : pchar) : PFL_OBJECT; cdecl;external;
-
-Function fl_create_mesacanvas(p1 : Longint; p2,p3,p4,p5 : TFL_Coord;p6 :  pchar) : PFL_OBJECT; cdecl;external;
-
-Function fl_add_mesacanvas(p1 : Longint; p2,p3,p4,p5 : TFL_Coord;p6 : pchar) : PFL_OBJECT; cdecl;external;
-
-
-
-Procedure fl_set_canvas_decoration(p1 : PFL_OBJECT; p2 :  Longint );
-Procedure fl_set_canvas_colormap(p1 : PFL_OBJECT; p2 :  TColormap);cdecl;external;
-Procedure fl_set_canvas_visual(p1 : PFL_OBJECT; p2 :  PVisual);cdecl;external;
-Procedure fl_set_canvas_depth(p1 : PFL_OBJECT; p2 :  Longint );cdecl;external;
-Procedure fl_set_canvas_attributes(p1 : PFL_OBJECT; p2 : word;  p3 : PXSetWindowAttributes);cdecl;external;
-
-Function fl_add_canvas_handler(p1 : PFL_OBJECT; p2 :  Longint ; p3 : PFL_HANDLE_CANVAS; p4 : pointer) : PFL_HANDLE_CANVAS ; cdecl;external;
-
-Function fl_get_canvas_id(p1 : PFL_OBJECT ) : TWindow ; cdecl;external;
-Function fl_get_canvas_colormap(p1 : PFL_OBJECT ) : TColormap;  cdecl;external;
-Function fl_get_canvas_depth(p1 : PFL_OBJECT ) : Longint ;  cdecl;external;
-Procedure fl_remove_canvas_handler(p1 : PFL_OBJECT; p2 : Longint ; p3 : PFL_HANDLE_CANVAS); cdecl;external;
-Procedure fl_hide_canvas(p1 : PFL_OBJECT);      { internal use only } cdecl;external;
-Procedure fl_canvas_yield_to_shortcut(p1 : PFL_OBJECT; p2 :  Longint ); cdecl;external;
-Procedure fl_share_canvas_colormap(p1 : PFL_OBJECT; p2 :  TColormap); cdecl;external;
-Procedure fl_modify_canvas_prop(p1 : PFL_OBJECT;
-                                  P2 : PFL_MODIFY_CANVAS_PROP;
-                                  p3 : PFL_MODIFY_CANVAS_PROP;
-                                  p4 : PFL_MODIFY_CANVAS_PROP);cdecl;external;
-
-{ OpenGL canvases }
-Function fl_create_glcanvas(p1 : Longint; p2,p3,p4,p5 : TFL_Coord;p6 : pchar) : PFL_OBJECT; cdecl;external;
-
-Function fl_add_glcanvas(p1 : Longint; p2,p3,p4,p5 : TFL_Coord; p6 : pchar) : PFL_OBJECT; cdecl;external;
-
-Procedure fl_set_glcanvas_defaults(p1 : pointer);  cdecl;external;
-Procedure fl_get_glcanvas_defaults(p1 : pointer);  cdecl;external;
-Procedure fl_set_glcanvas_attributes(p1 : PFL_OBJECT; p2 : pointer); cdecl;external;
-Procedure fl_get_glcanvas_attributes(p1 : PFL_OBJECT; p2 : pointer); cdecl;external;
-Procedure fl_set_glcanvas_direct(p1 : PFL_OBJECT; p2 :  Longint ); cdecl;external;
-Procedure fl_activate_glcanvas(p1 : PFL_OBJECT); cdecl;external;
-
-Function fl_get_glcanvas_xvisualinfo(p1 : PFL_OBJECT ) : PXVisualInfo;  cdecl;external;
-
-{
-# if defined(p1 : __GLX_glx_h__) || defined(p1 : GLX_H)
-Function fl_get_glcanvas_context(p1 : PFL_OBJECT ob ) : GLXContext ;  cdecl;external;
-Function fl_glwincreate(p1 : *; p2 : GLXContext *; p3 : Longint ; p4 : Longint  ) : TWindow ; cdecl;external;
-Function fl_glwinopen(p1 : *; p2 : GLXContext *; p3 : Longint ; p4 : Longint  ) : TWindow ; cdecl;external;
-}
-
-
-
-{
- *
- * Object Class: Chart
- *
- }
-
-
-const
-    FL_BAR_CHART        = 0;
-    FL_HORBAR_CHART     = 1;
-    FL_LINE_CHART       = 2;
-    FL_FILL_CHART       = 3;
-    FL_SPIKE_CHART      = 4;
-    FL_PIE_CHART        = 5;
-    FL_SPECIALPIE_CHART = 6;
-
-Type  TFL_CHART_TYPE = Longint;
-
-{**** Defaults ****}
-
-Const
-  FL_CHART_BOXTYPE      = FL_BORDER_BOX;
-  FL_CHART_COL1         = FL_COL1;
-  FL_CHART_LCOL         = FL_LCOL;
-  FL_CHART_ALIGN        = FL_ALIGN_BOTTOM;
-
-{**** Others   ****}
-  FL_CHART_MAX          = 512;
-
-{**** Routines ****}
-
-Function fl_create_chart(p1 : Longint; p2,p3,p4,p5 : TFL_Coord; p6 :  pchar) : PFL_OBJECT; cdecl;external;
-Function fl_add_chart(p1 : longint; p2,p3,p4,p5 : TFL_Coord; p6 : pchar) : PFL_OBJECT; cdecl;external;
-
-Procedure fl_clear_chart(p1 : PFL_OBJECT); cdecl;external;
-Procedure fl_add_chart_value(p1 : PFL_OBJECT; p2 : double; p3 : pchar; p4 : Longint ); cdecl;external;
-Procedure fl_insert_chart_value(p1 : PFL_OBJECT; p2 : Longint ; p3 : double; p4 : pchar; p5 : Longint ); cdecl;external;
-Procedure fl_replace_chart_value(p1 : PFL_OBJECT; p2 : Longint ; p3 : double; p4 : pchar; p5 : Longint ); cdecl;external;
-Procedure fl_set_chart_bounds(p1 : PFL_OBJECT; p2 : double; p3 :double); cdecl;external;
-Procedure fl_set_chart_maxnumb(p1 : PFL_OBJECT; p2 :  Longint ); cdecl;external;
-Procedure fl_set_chart_autosize(p1 : PFL_OBJECT; p2 :  Longint ); cdecl;external;
-Procedure fl_set_chart_lstyle(p1 : PFL_OBJECT; p2 :  Longint ); cdecl;external;
-Procedure fl_set_chart_lsize(p1 : PFL_OBJECT; p2 :  Longint ); cdecl;external;
-Procedure fl_set_chart_lcolor(p1 : PFL_OBJECT; p2 :  TFL_COLOR); cdecl;external;
-
-
-const
-  FL_NORMAL_CHOICE      = 0;
-  FL_NORMAL_CHOICE2     = 1;
-  FL_DROPLIST_CHOICE    = 2;
-
-Type
- TFL_CHOICE_TYPE = Longint;
-
-Const
-  FL_SIMPLE_CHOICE      = FL_NORMAL_CHOICE;
-
-{**** Defaults ****}
-
- FL_CHOICE_BOXTYPE      = FL_ROUNDED_BOX;
- FL_CHOICE_COL1         = FL_COL1;
- FL_CHOICE_COL2         = FL_LCOL;
- FL_CHOICE_LCOL         = FL_LCOL;
- FL_CHOICE_ALIGN        = FL_ALIGN_LEFT;
-
-{**** Others   ****}
-
- FL_CHOICE_MCOL         = FL_MCOL;
- FL_CHOICE_MAXITEMS     = 63;
-
-{**** Routines ****}
-
-Function fl_create_choice(p1 : longint; p2,p3,p4,p5 : TFL_Coord; p6 : pchar) :  PFL_OBJECT; cdecl;external;
-
-Function fl_add_choice(p1 : longint; p2,p3,p4,p5 : TFL_Coord; p6 : pchar ) : PFL_OBJECT; cdecl;external;
-Procedure fl_clear_choice(p1 : PFL_OBJECT);   cdecl;external;
-Procedure fl_addto_choice(p1 : PFL_OBJECT; p2 :  pchar); cdecl;external;
-Procedure fl_replace_choice(p1 : PFL_OBJECT; p2 : Longint ; p3 :pchar); cdecl;external;
-Procedure fl_delete_choice(p1 : PFL_OBJECT; p2 :  Longint ); cdecl;external;
-Procedure fl_set_choice(p1 : PFL_OBJECT; p2 :  Longint ); cdecl;external;
-Procedure fl_set_choice_text(p1 : PFL_OBJECT; p2 :  pchar); cdecl;external;
-Function fl_get_choice(p1 : PFL_OBJECT ) : Longint ; cdecl;external;
-Function fl_get_choice_item_text(p1 : PFL_OBJECT; p2 :  Longint  ) : pchar; cdecl;external;
-Function fl_get_choice_maxitems(p1 : PFL_OBJECT ) : Longint ;  cdecl;external;
-Function fl_get_choice_text(p1 : PFL_OBJECT ) : pchar; cdecl;external;
-Procedure fl_set_choice_fontsize(p1 : PFL_OBJECT; p2 :  Longint ); cdecl;external;
-Procedure fl_set_choice_fontstyle(p1 : PFL_OBJECT; p2 :  Longint ); cdecl;external;
-Procedure fl_set_choice_align(p1 : PFL_OBJECT; p2 :  Longint ); cdecl;external;
-Procedure fl_set_choice_item_mode(p1 : PFL_OBJECT; p2 : Longint ; p3 : word); cdecl;external;
-Procedure fl_set_choice_item_shortcut(p1 : PFL_OBJECT; p2 : Longint ; p3 :pchar); cdecl;external;
-Function fl_set_choice_entries(p1 : PFL_OBJECT ; p2 : PFL_PUP_ENTRY) : longint; cdecl;external;
-
-
-Const
-    FL_ANALOG_CLOCK     = 0;
-    FL_DIGITAL_CLOCK    = 1;
-
- FL_CLOCK_BOXTYPE   = FL_UP_BOX;
- FL_CLOCK_COL1      = FL_INACTIVE_COL;
- FL_CLOCK_COL2      = FL_BOTTOM_BCOL;
- FL_CLOCK_LCOL      = FL_BLACK;
- FL_CLOCK_ALIGN     = FL_ALIGN_BOTTOM;
-
- FL_CLOCK_TOPCOL    = FL_COL1;
-
-Function fl_create_clock(p1 : longint; p2,p3,p4,p5 : TFL_Coord; p6 : pchar) : PFL_OBJECT; cdecl;external;
-
-Function fl_add_clock(p1 : longint; p2,p3,p4,p5 : TFL_Coord; p6 : pchar) : PFL_OBJECT; cdecl;external;
-Procedure fl_get_clock(p1 : PFL_OBJECT; p2,p3,p4 : pointer); cdecl;external;
-Function fl_set_clock_adjustment ( p1 : PFL_OBJECT; p2 : longint) : longint; cdecl;external;
-Procedure fl_set_clock_ampm(p1 : PFL_OBJECT; p2 : Longint); cdecl;external;
-
-
-Const
-    FL_NORMAL_COUNTER = 0;
-    FL_SIMPLE_COUNTER = 1;
-
-type TFL_COUNTER_TYPE = Longint;
-
-{**** Defaults ****}
-Const
- FL_COUNTER_BOXTYPE     = FL_UP_BOX;
- FL_COUNTER_COL1        = FL_COL1;
- FL_COUNTER_COL2        = FL_BLUE;      { ct label     }
- FL_COUNTER_LCOL        = FL_LCOL;      { ct reporting }
- FL_COUNTER_ALIGN       = FL_ALIGN_BOTTOM;
-
-{**** Others   ****}
-
- FL_COUNTER_BW          = FL_BOUND_WIDTH-1;
-
-{**** Routines ****}
-
-Function fl_create_counter(p1 : longint; p2,p3,p4,p5 : TFL_Coord;p6 : pchar) : PFL_OBJECT; cdecl;external;
-
-Function fl_add_counter(p1 : longint; p2,p3,p4,p5 : TFL_Coord;p6: pchar) : PFL_OBJECT; cdecl;external;
-
-Procedure fl_set_counter_value(p1 : PFL_OBJECT; p2 :  double); cdecl;external;
-Procedure fl_set_counter_bounds(p1 : PFL_OBJECT; p2 : double; p3 :double); cdecl;external;
-Procedure fl_set_counter_step(p1 : PFL_OBJECT; p2 : double; p3 :double); cdecl;external;
-Procedure fl_set_counter_precision(p1 : PFL_OBJECT; p2 :  Longint ); cdecl;external;
-Function  fl_get_counter_value(p1 : PFL_OBJECT ) : double ;  cdecl;external;
-Procedure fl_get_counter_bounds(p1 : PFL_OBJECT; p2,p3 : pdouble); cdecl;external;
-Procedure fl_get_counter_step(p1 : PFL_OBJECT; p2,p3 : pdouble); cdecl;external;
-Procedure fl_set_counter_return(p1 : PFL_OBJECT; p2 :  Longint ); cdecl;external;
-Procedure fl_set_counter_filter(p1 : PFL_OBJECT;p2 : pointer); {!!!!} cdecl;external;
-{
-                                  pchar(p1 : *)(p1 : PFL_OBJECT; p2 : double; p3 :Longint ));
-}
-
-{
- *
- * Cursor defs and prototypes
- *
- }
-
-
-{$i cursorfont.inc}
-
-const FL_DEFAULT_CURSOR = -1;
-      FL_INVISIBLE_CURSOR = -2;
-
-Procedure fl_set_cursor(p1 : TWindow; p2 :  Longint ); cdecl;external;
-Procedure fl_set_cursor_color(p1 : longint; p2 : TFL_COLOR; p3 :TFL_COLOR); cdecl;external;
-Function fl_create_bitmap_cursor(p1 : pchar; p2 :  pchar; p3,p4,p5,p6 : Longint ) : TCursor; cdecl;external;
-Function fl_get_cursor_byname(p1 : longint ) : TCursor;  cdecl;external;
-Function fl_create_animated_cursor(p1 : Plongint;p2 : longint): Longint; cdecl;external;
-
-{
-#define fl_reset_cursor(p1 : win) fl_set_cursor(p1 : win; p2 :  -1);
-}
-
-
-Const
-    FL_NORMAL_DIAL = 0;
-    FL_LINE_DIAL   = 1;
-    FL_FILL_DIAL   = 2;
-
-    FL_DIAL_CW  = 0;
-    FL_DIAL_CCW = 1;
-
-Type
-  TFL_DIAL_TYPE = Longint;
-
-{**** Defaults ****}
-Const
-
- FL_DIAL_BOXTYPE        = FL_FLAT_BOX;
- FL_DIAL_COL1           = FL_COL1;
- FL_DIAL_COL2           = FL_RIGHT_BCOL;
- FL_DIAL_LCOL           = FL_LCOL;
- FL_DIAL_ALIGN          = FL_ALIGN_BOTTOM;
-
-{**** Others   ****}
-
- FL_DIAL_TOPCOL         = FL_COL1;
-
-{**** Routines ****}
-
-Function fl_create_dial(p1 : longint; p2,p3,p4,p5 : TFL_Coord;p6 :pchar) : PFL_OBJECT; cdecl;external;
-Function fl_add_dial(p1 : longint; p2,p3,p4,p5 : TFL_Coord;p6: pchar) : PFL_OBJECT; cdecl;external;
-
-Procedure fl_set_dial_value(p1 : PFL_OBJECT; p2 :  double); cdecl;external;
-Function fl_get_dial_value(p1 : PFL_OBJECT ) : double ;  cdecl;external;
-Procedure fl_set_dial_bounds(p1 : PFL_OBJECT; p2 : double; p3 :double); cdecl;external;
-Procedure fl_get_dial_bounds(p1 : PFL_OBJECT; p2 : pdouble; p3 :pdouble); cdecl;external;
-
-Procedure fl_set_dial_step(p1 : PFL_OBJECT; p2 :  double); cdecl;external;
-Procedure fl_set_dial_return(p1 : PFL_OBJECT; p2 :  Longint ); cdecl;external;
-Procedure fl_set_dial_angles(p1 : PFL_OBJECT; p2 : double; p3 :double); cdecl;external;
-Procedure fl_set_dial_cross(p1 : PFL_OBJECT; p2 :  Longint ); cdecl;external;
-Procedure fl_set_dial_direction (p1 : PFL_OBJECT; p2 : Longint); cdecl;external;
-
-{
- *
- *  Convenience Functions to read a directory cdecl;external;
- }
-
-
-{  File types }
-
-Const
-    FT_FILE  = 0;
-    FT_DIR   = 1;
-    FT_LINK  = 2;
-    FT_SOCK  = 3;
-    FT_FIFO  = 4;
-    FT_BLK   = 5;
-    FT_CHR   = 6;
-    FT_OTHER = 7;
-
-type TFL_Dirlist = record
-    name : pchar;                       { entry name }
-    ftype : longint;                    { FILE_TYPE  }
-    dl_mtime : longint;
-    dl_size : cardinal;
-    filler : array[0..2] of longint;
-    end;
-    PFL_Dirlist = ^TFL_Dirlist;
-
-
-TFL_DIRLIST_FILTER = Procedure (p1 : pchar; p2 :  Longint ); cdecl;
-PFL_DIRLIST_FILTER = ^TFL_DIRLIST_FILTER;
-
-Const
-  FL_ALPHASORT  = 1;
-  FL_RALPHASORT = 2;
-  FL_MTIMESORT  = 3;
-  FL_RMTIMESORT = 4;
-  FL_SIZESORT  = 5;
-  FL_RSIZESORT = 6;
-
-
-{ read dir with pattern filtering. All dirs read might be cached.
- * must not change dirlist in anyway.
- }
-Function fl_get_dirlist(p1 : pchar; p2 : pchar; p3 : pointer;p4 :longint) : PFL_Dirlist;        { rescan } cdecl;external;
-
-
-Function fl_set_dirlist_filter (p1 : PFL_DIRLIST_FILTER ) : PFL_DIRLIST_FILTER ; cdecl;external;
-Procedure fl_set_dirlist_sort ( p1 : longint); cdecl;external;
-
-Procedure fl_free_dirlist(p1 : PFL_Dirlist);  cdecl;external;
-
-{ Free all directory caches }
-Procedure fl_free_all_dirlist;  cdecl;external;
-
-Function fl_is_valid_dir(p1 : pchar ) : Longint; cdecl;external;
-Function fl_fmtime(p1 : pchar ) : cardinal ;  cdecl;external;
-Function fl_fix_dirname(p1 : pchar) : pchar;  cdecl;external;
-
-Const
- FLPS_AUTO = 0;
- FLPS_LANDSCAPE = 1;
- FLPS_PORTRAIT = 2;
-
-
- FLPS_BW = -1;
- FLPS_GRAYSCALE=0;
-
- type
-   TFLPS_CONTROL = record
-    ps_color,orientation,auto_fit,drawbox,eps : longint;
-    xdpi,ydpi,paper_w,paper_h, gamma : real; { Must be float }
-   end;
-   PFLPS_CONTROL = ^TFLPS_CONTROL;
-
-Function flps_init : PFLPS_CONTROL; cdecl;external;
-Function fl_object_ps_dump (p1 : PFL_OBJECT; p2 : pchar) : longint; cdecl;external;
-
-{ types of frames }
-Const
-    FL_NO_FRAME         = 0;
-    FL_UP_FRAME         = 1;
-    FL_DOWN_FRAME       = 2;
-    FL_BORDER_FRAME     = 3;
-    FL_SHADOW_FRAME     = 4;
-    FL_ENGRAVED_FRAME   = 5;
-    FL_ROUNDED_FRAME    = 6;
-    FL_EMBOSSED_FRAME   = 7;
-    FL_OVAL_FRAME       = 8;
-
-    FL_FRAME_COL1 = FL_BLACK;
-    FL_FRAME_COL2 = FL_COL1;
-    FL_FRAME_LCOL = FL_BLACK;
-
-Function fl_create_frame(p1 : longint; p2,p3,p4,p5 : TFL_Coord; p6 : pchar) : PFL_OBJECT; cdecl;external;
-Function fl_add_frame(p1 : longint; p2,p3,p4,p5 : TFL_Coord;p6 : pchar) : PFL_OBJECT; cdecl;external;
-Function fl_create_labelframe(p1 : longint; p2,p3,p4,p5 : TFL_Coord; p6 : pchar) : PFL_OBJECT; cdecl;external;
-Function fl_add_labelframe(p1 : longint; p2,p3,p4,p5 : TFL_Coord;p6 : pchar) : PFL_OBJECT; cdecl;external;
-
-
-{
- *
- *  Object Class: Free
- }
-
-Const
-    FL_NORMAL_FREE      = 0;
-    FL_INACTIVE_FREE    = 1;
-    FL_INPUT_FREE       = 2;
-    FL_CONTINUOUS_FREE  = 3;
-    FL_ALL_FREE         = 4;
-Type
-   TFL_FREE_TYPE = Longint;
-   PFL_FREE_TYPE = ^TFL_FREE_TYPE;
-
-Const FL_SLEEPING_FREE =  FL_INACTIVE_FREE;
-
-
-Function fl_create_free(p1 : LongInt; p2,p3,p4,p5 : TFL_Coord;p6: pchar; p7 : PFL_HANDLEPTR) : PFL_OBJECT; cdecl;external;
-Function fl_add_free(p1 : LongInt; p2,p3,p4,p5 : TFL_Coord;p6 : pchar; P7 : PFL_HANDLEPTR) : PFL_OBJECT; cdecl;external;
-
-Const
- FLAlertDismissLabel = 'flAlert.dismiss.label';
- FLQuestionYesLabel  = 'flQuestion.yes.label';
- FLQuestionNoLabel   = 'flQuestion.no.label';
- FLOKLabel           = 'flInput.ok.label';
- FLInputClearLabel   = 'flInput.clear.label';
- FLInputCancelLabel   = 'flInput.cancel.label';
-
-{ from goodies.c }
-Procedure fl_set_goodies_font(p1 : LongInt; p2 :  Longint ); cdecl;external;
-Procedure fl_show_message(p1 : pchar; p2 : pchar; p3 :pchar); cdecl;external;
-Procedure fl_show_messages(p1 : pchar); cdecl;external;
-Procedure fl_show_alert(p1 : pchar; p2 : pchar; p3 : pchar; p4 : Longint ); cdecl;external;
-Function fl_show_question(p1 : pchar; p2 : longint) : Longint ; cdecl;external;
-Function fl_show_input(p1 : pchar; p2 :  pchar ) : pchar; cdecl;external;
-Function fl_show_simple_input(p1 : pchar; p2 :  pchar ) : pchar; cdecl;external;
-Function fl_show_colormap(p1 : Longint ) : Longint ;   cdecl;external;
-Function fl_show_choice(p1,p2,p3 : pchar; p4 : Longint ; p5,p6,p7 : pchar; p8 : Longint) : Longint; cdecl;external;
-Function fl_show_choices(p1 : pchar; p4 : Longint ; p5,p6,p7 : pchar; p8 : Longint) : Longint; cdecl;external;
-Procedure fl_set_choices_shortcut(p1,p2,p3 :pchar); cdecl;external;
-
-Procedure fl_show_oneliner(p1 : pchar; p2 : TFL_Coord; p3 :TFL_Coord); cdecl;external;
-Procedure fl_hide_oneliner;  cdecl;external;
-Procedure fl_set_oneliner_font(p1 : LongInt; p2 :  Longint ); cdecl;external;
-Procedure fl_set_oneliner_color(p1 : TFL_COLOR; p2 :  TFL_COLOR); cdecl;external;
-
-type TFD_CMDLOG = record
-    form : PFL_FORM;
-    browser,close_browser,clear_browser : PFL_OBJECT;
-end;
-PFD_CMDLOG = ^TFD_CMDLOG;
-
-Function fl_exe_command(p1 : pchar; p2 : Longint) : Longint; cdecl;external;
-Function fl_end_command(p1 : longint) : Longint; cdecl;external;
-Function fl_check_command(p1 : longint) : longint; cdecl;external;
-Function fl_end_all_command : Longint; cdecl;external;
-Procedure fl_show_command_log(p1 : Longint); cdecl;external;
-Procedure fl_hide_command_log; cdecl;external;
-Procedure fl_clear_command_log; cdecl;external;
-Procedure fl_addto_command_log(p1 : pchar); cdecl;external;
-Procedure fl_set_command_log_position(p1,p2 :longint); cdecl;external;
-Function fl_get_command_log_fdstruct : PFD_CMDLOG; cdecl;external;
-
-{ aliases }
-{
-#define fl_open_command    fl_exe_command
-#define fl_close_command   fl_end_command
-}
-
-{****** from file selector ****************}
-
-Const  FL_MAX_FSELECTOR =  6;
-
-type TFD_FSELECTOR = record
-    fselect : PFL_FORM;
-    browser, theinput, prompt, resbutt,
-    patbutt,dirbutt, cancel, ready : PFL_OBJECT;
-    dirlabel,patlabel : PFL_OBJECT;
-    appbut : array[0..2] of PFL_OBJECT;
-end;
-
-PFD_FSELECTOR = ^TFD_FSELECTOR;
-
-Function fl_use_fselector(p1 : LongInt ) : LongInt;  cdecl;external;
-Function fl_show_fselector(p1,p2,p3,p4 :  pchar) : pchar; cdecl;external;
-
-Procedure fl_set_fselector_fontsize (p1 : Longint); cdecl;external;
-Procedure fl_set_fselector_fontstyle (p1 : longint); cdecl;external;
-Procedure fl_set_fselector_placement(p1 : LongInt);  cdecl;external;
-Procedure fl_set_fselector_border(p1 : LongInt);  cdecl;external;
-
-{
-#define fl_set_fselector_transient(p1 : b)   \
-                     fl_set_fselector_border(p1 : (p1 : b)?FL_TRANSIENT:FL_FULLBORDER)
-}
-
-Type TFSelector_Callback = Function (P1 : Pchar; P2 : Pointer) : Longint;  cdecl;
-     PFSelector_Callback = ^TFSelector_Callback;
-     TFL_Procedure = Procedure; cdecl;
-     PFL_Procedure = ^TFL_Procedure;
-
-Procedure fl_set_fselector_callback( p1 : PFSelector_Callback; p2 : pointer); cdecl;external;
-Function fl_get_filename : pchar; cdecl;external;
-Function fl_get_directory : pchar;  cdecl;external;
-Function fl_get_pattern : pchar;   cdecl;external;
-Function fl_set_directory (p1 : pchar ) : LongInt;  cdecl;external;
-Procedure fl_set_pattern (p1 : pchar); cdecl;external;
-Procedure fl_refresh_fselector;  cdecl;external;
-Procedure fl_add_fselector_appbutton(p1 : pchar; p2 : PFL_Procedure; p3 : pointer); cdecl;external;
-Procedure fl_remove_fselector_appbutton(p1 : pchar); cdecl;external;
-Procedure fl_disable_fselector_cache(p1 : LongInt);  cdecl;external;
-Procedure fl_invalidate_fselector_cache;  cdecl;external;
-Function fl_get_fselector_form : PFL_FORM;  cdecl;external;
-Function fl_get_fselector_fdstruct  : PFD_FSELECTOR;  cdecl;external;
-Procedure fl_hide_fselector;  cdecl;external;
-
-
-Procedure fl_set_fselector_filetype_marker(p1,p2,p3,p4,p5 : Longint); cdecl;external;
-
-{
-#define fl_show_file_selector     fl_show_fselector
-#define fl_set_fselector_cb       fl_set_fselector_callback
-#define fl_set_fselector_title(p1 : s) fl_set_form_title(p1 : fl_get_fselector_form(p1 : ); p2 : s)
-}
-
-
-{**** Types    ****}
-
-Const
-    FL_NORMAL_INPUT     = 0;
-    FL_FLOAT_INPUT      = 1;
-    FL_INT_INPUT        = 2;
-    FL_DATE_INPUT       = 3;
-    FL_MULTILINE_INPUT  = 4;
-    FL_HIDDEN_INPUT     = 5;
-    FL_SECRET_INPUT     = 6;
-
-    FL_INPUT_MMDD       = 0;
-    FL_INPUT_DDMM       = 1;
-
-Type TFL_INPUT_TYPE = Longint;
-
-{**** Defaults ****}
-
-Const
-   FL_INPUT_BOXTYPE             = FL_DOWN_BOX;
-   FL_INPUT_COL1                = FL_COL1;
-   FL_INPUT_COL2                = FL_MCOL;
-   FL_INPUT_LCOL                = FL_LCOL;
-   FL_INPUT_ALIGN               = FL_ALIGN_LEFT;
-
-{**** Others   ****}
-
-   FL_INPUT_TCOL                = FL_LCOL;
-   FL_INPUT_CCOL                = FL_BLUE;
-
-   cFL_RINGBELL             = (1 shl 4);
-
-{**** Routines ****}
-
-Function fl_create_input(p1 : Longint; p2,p3,p4,p5 : TFL_Coord; p6: pchar) : PFL_OBJECT; cdecl;external;
-
-Function fl_add_input(p1 : LongInt; p2,p3,p4,p5 : TFL_Coord; P6 : pchar ) : PFL_OBJECT; cdecl;external;
-
-Procedure fl_set_input(p1 : PFL_OBJECT; p2 :  pchar); cdecl;external;
-Procedure fl_set_input_color(p1 : PFL_OBJECT; p2 : Longint ; p3 :Longint ); cdecl;external;
-Procedure fl_set_input_return(p1 : PFL_OBJECT; p2 :  Longint ); cdecl;external;
-Procedure fl_set_input_scroll(p1 : PFL_OBJECT; p2 :  Longint ); cdecl;external;
-Procedure fl_set_input_cursorpos(p1 : PFL_OBJECT; p2 : Longint ; p3 :Longint ); cdecl;external;
-Procedure fl_set_input_selected(p1 : PFL_OBJECT; p2 :  Longint ); cdecl;external;
-Procedure fl_set_input_selected_range(p1 : PFL_OBJECT; p2 : Longint ; p3 :Longint ); cdecl;external;
-Procedure fl_set_input_maxchars(p1 : PFL_OBJECT; p2 :  Longint ); cdecl;external;
-Procedure fl_set_input_format(p1 : PFL_OBJECT; p2,p3 :  Longint ); cdecl;external;
-Procedure fl_set_input_hscrollbar(p1 : PFL_OBJECT; p2 :  Longint ); cdecl;external;
-Procedure fl_set_input_vscrollbar(p1 : PFL_OBJECT; p2 :  Longint ); cdecl;external;
-Procedure fl_set_input_xoffset(p1 : PFL_OBJECT; p2 :  Longint ); cdecl;external;
-Procedure fl_set_input_topline(p1 : PFL_OBJECT; p2 :  Longint ); cdecl;external;
-Procedure fl_set_input_scrollbarsize(p1 : PFL_OBJECT; p2,p3 :  Longint ); cdecl;external;
-
-Function fl_get_input(p1 : PFL_OBJECT ) : pchar;   cdecl;external;
-Function fl_get_input_cursorpos(p1 : PFL_OBJECT; p2,p3 : Pointer ) : LongInt; cdecl;external;
-Function fl_get_input_topline(p1 : PFL_OBJECT;p2,p3 : PLongint) : Longint; cdecl;external;
-Function fl_get_input_screenlines(p1 : PFL_OBJECT) : Longint; cdecl;external;
-Function fl_get_input_numberoflines(p1 : PFL_OBJECT) : Longint; cdecl;external;
-Procedure fl_get_input_format(p1 : PFL_OBJECT;p2,p3 : PLongint); cdecl;external;
-Function fl_get_input_selected_range(p1 : PFL_OBJECT; p2 : Longint ; p3 :Longint ) : pchar ;  cdecl;external;
-
-
-
-type
- TFL_INPUTVALIDATOR = Procedure (p1 : PFL_OBJECT; p2,p3 : pchar; p4 : Longint ); cdecl;
- PFL_INPUTVALIDATOR= ^TFL_INPUTVALIDATOR;
-
-Function fl_set_input_filter(p1 : PFL_OBJECT; p2 :  PFL_INPUTVALIDATOR ) : PFL_INPUTVALIDATOR ; cdecl;external;
-
-{
-#define fl_set_input_shortcut fl_set_object_shortcut
-#define ringbell(p1 : )  XBell(p1 : fl_display; p2 :  0)
-}
-
-type TFL_EditKeymap = record
-    { basic editing }
-    del_prev_char : Longint;            { delete previous char    }
-    del_next_char : Longint;            { delete next char        }
-    del_prev_word : Longint;            { delete previous word    }
-    del_next_word : Longint;            { delete next word        }
-
-    { movement }
-    moveto_prev_line : Longint; { one line  up             }
-    moveto_next_line : Longint; { one line down            }
-    moveto_prev_char : Longint; { one char left            }
-    moveto_next_char : Longint; { one char right           }
-    moveto_prev_word : Longint; { one word left            }
-    moveto_next_word : Longint; { one word right           }
-    moveto_prev_page : Longint; { one page up              }
-    moveto_next_page : Longint; { one page down            }
-    moveto_bol : Longint;               { move to begining of line }
-    moveto_eol : Longint;               { move to end of line      }
-    moveto_bof : Longint;               { move to begin of file    }
-    moveto_eof : Longint;               { move to end of file      }
-
-    { misc. stuff }
-    transpose : Longint;                { switch two char positions }
-    paste : Longint;                    { paste the edit buffer    }
-    backspace : Longint;                { another  del_prev_char   }
-    del_to_bol : Longint;               { cut to begining of line  }
-    del_to_eol : Longint;               { cut to end of line       }
-    clear_field : Longint;              { delete everything        }
-    del_to_eos : Longint;               { not implemented          }
-    reserverd : array[0..3] of Longint;         { fillter                  }
-end;
-PFL_EditKeymap = ^TFL_EditKeymap;
-
-Procedure fl_set_input_editkeymap(a: PFL_EditKeymap); cdecl;external;
-
-
-{***********   Object Class: Menu         ***********}
-
-Const
-    FL_TOUCH_MENU       = 0;
-    FL_PUSH_MENU        = 1;
-    FL_PULLDOWN_MENU    = 2;
-
-Type TFL_MENU_TYPE = Longint;
-
-{**** Defaults ****}
-
-Const
-  FL_MENU_BOXTYPE       = FL_BORDER_BOX;
-  FL_MENU_COL1          = FL_COL1;
-  FL_MENU_COL2          = FL_MCOL;
-  FL_MENU_LCOL          = FL_LCOL;
-  FL_MENU_ALIGN         = FL_ALIGN_CENTER;
-
-{**** Others   ****}
-
-  FL_MENU_MAXITEMS      = 128;
-  FL_MENU_MAXSTR        = 64;
-
-{**** Routines ****}
-
-Function fl_create_menu(p1 : LongInt; p2,p3,p4,p5 : TFL_Coord; P6 : pchar) : PFL_OBJECT; cdecl;external;
-
-Function fl_add_menu(p1 : LongInt; p2,p3,p4,p5 : TFL_Coord; P6 : pchar) : PFL_OBJECT; cdecl;external;
-
-Procedure fl_clear_menu(p1 : PFL_OBJECT);  cdecl;external;
-Procedure fl_set_menu(p1 : PFL_OBJECT; p2 :  pchar); cdecl;external;
-Procedure fl_addto_menu(p1 : PFL_OBJECT; p2 :  pchar); cdecl;external;
-Procedure fl_replace_menu_item(p1 : PFL_OBJECT; p2 : Longint ; p3 :pchar); cdecl;external;
-Procedure fl_delete_menu_item(p1 : PFL_OBJECT; p2 :  Longint ); cdecl;external;
-
-Procedure fl_set_menu_item_shortcut(p1 : PFL_OBJECT; p2 : Longint ; p3 :pchar); cdecl;external;
-Procedure fl_set_menu_item_mode(p1 : PFL_OBJECT; p2 : Longint ; p3 : Cardinal); cdecl;external;
-Procedure fl_show_menu_symbol(p1 : PFL_OBJECT; p2 :  Longint ); cdecl;external;
-Procedure fl_set_menu_popup(p1 : PFL_OBJECT; p2 :  Longint ); cdecl;external;
-Function fl_get_menu_popup(p1 : pfl_object): longint; cdecl;external;
-
-Function fl_get_menu(p1 : PFL_OBJECT ) : Longint ;  cdecl;external;
-Function fl_get_menu_item_text(p1 : PFL_OBJECT; p2 :  Longint  ) : pchar; cdecl;external;
-Function fl_get_menu_maxitems(p1 : PFL_OBJECT ) : Longint ;  cdecl;external;
-Function fl_get_menu_item_mode(p1 : PFL_OBJECT; p2 :  Longint  ) : Cardinal ; cdecl;external;
-Function fl_get_menu_text(p1 : PFL_OBJECT ) : pchar; cdecl;external;
-
-
-
-Const
-    FL_NORMAL_MENUBAR = 0;
-
-    FL_MENUBAR_BOXTYPE  =FL_UP_BOX;
-    FL_MENUBAR_COL1     =FL_COL1;
-    FL_MENUBAR_COL2     =FL_MCOL;
-    FL_MENUBAR_LCOL     =FL_LCOL;
-
-Function fl_create_menubar(p1 : longint; p2,p3,p4,p5 : TFL_COORD;p6 : Pchar): PFL_OBJECT; cdecl;external;
-Function fl_add_menubar(p1 : longint;p2,p3,p4,p5 : TFL_Coord;p6 : pchar) : PFL_OBJECT; cdecl;external;
-
-Procedure fl_clear_menubar(p1 : PFL_OBJECT); cdecl;external;
-Procedure fl_set_menubar(p1 : PFL_OBJECT; p2 : pchar); cdecl;external;
-Procedure fl_set_menubar_entries(p1 : PFL_OBJECT; p2 : pchar;p3 : PFL_PUP_ENTRY); cdecl;external;
-
-
-{
- *
- *  Prototypes for pop-up menus
- }
-
-
-Const
- FL_MAXPUPI   = 80;     { max item each pup        }
- FL_PUP_PADH  =  4;     { space between each items }
-
- type
-  TFL_PUP_ENTERCB = Procedure (p1 : longint; p2: pointer); cdecl;
-  PFL_PUP_ENTERCB = ^TFL_PUP_ENTERCB;
-
-  TFL_PUP_LEAVECB =Procedure (p1 : longint; p2: pointer); cdecl;
-  PFL_PUP_LEAVECB = ^TFL_PUP_LEAVECB;
-
-Function fl_setpup_entries(p1 : Longint; p2 : PFL_PUP_ENTRY) : Longint; cdecl;external;
-Function fl_newpup(p1 : TWindow ) : LongInt;  cdecl;external;
-
-Function fl_defpup(p1 : TWindow; p2 :  pchar) : LongInt; cdecl;external;
-Function fl_addtopup(p1 : longint; p2 :  pchar) : LongInt; cdecl;external;
-
-Function fl_setpup_mode(p1 : Longint; p2 : Longint ; p3 : Cardinal) : Longint; cdecl;external;
-Procedure fl_freepup(p1 : Longint);  cdecl;external;
-Function fl_dopup(p1 : Longint ) : LongInt;  cdecl;external;
-
-Procedure fl_setpup_shortcut(p1 : Longint; p2 : Longint ; p3 :pchar); cdecl;external;
-Procedure fl_setpup_position(p1 : Longint; p2 :  Longint ); cdecl;external;
-Procedure fl_setpup_selection(p1 : Longint; p2 :  Longint ); cdecl;external;
-Procedure fl_setpup_shadow(p1 : LongInt; p2 :  Longint {was LongInt}); cdecl;external;
-Procedure fl_setpup_softedge(p1 : LongInt; p2 :  Longint ); cdecl;external;
-Function fl_setpup_fontsize(p1 : LongInt) : Longint;  cdecl;external;
-Function fl_setpup_fontstyle(p1 : LongInt) : Longint;   cdecl;external;
-Procedure fl_setpup_color(p1 : TFL_COLOR; p2 :  TFL_COLOR); cdecl;external;
-Procedure fl_setpup_checkcolor(p1 : TFL_COLOR);  cdecl;external;
-Function fl_setpup_default_fontsize(p1 : LongInt) : Longint;
-Function fl_setpup_default_fontstyle(p1 : LongInt) : Longint;
-Procedure fl_setpup_default_color(p1 : TFL_COLOR; p2 :  TFL_COLOR);
-Procedure fl_setpup_default_checkcolor(p1 : TFL_COLOR);
-Procedure fl_setpup_title(p1 : LongInt; p2 :  pchar); cdecl;external;
-Procedure fl_setpup_bw(p1 : LongInt; p2 :  Longint ); cdecl;external;
-Procedure fl_setpup_pad(p1 : LongInt; p2 : Longint ; p3 :Longint ); cdecl;external;
-Function fl_setpup_cursor(p1 : LongInt; p2 :  Longint  ) : TCursor ; cdecl;external;
-Function fl_setpup_default_cursor(p1 : LongInt ) : TCursor ;  cdecl;external;
-Function fl_setpup_maxpup(p1 : LongInt ) : LongInt;  cdecl;external;
-Function fl_getpup_mode(p1 : LongInt; p2 :  Longint  ) : Cardinal; cdecl;external;
-Function fl_getpup_text(p1 : LongInt; p2 :  Longint  ) : pchar; cdecl;external;
-Procedure fl_showpup(p1 : LongInt);  cdecl;external;
-Procedure fl_hidepup(p1 : LongInt); cdecl;external;
-
-{
-#define fl_setpup_hotkey    fl_setpup_shortcut
-}
-
-Function fl_setpup_itemcb(p1 : LongInt; p2 : Longint ; p3 :PFL_PUP_CB ) : PFL_PUP_CB ; cdecl;external;
-Function fl_setpup_menucb(p1 : LongInt; p2 :  PFL_PUP_CB ) : PFL_PUP_CB ; cdecl;external;
-Procedure fl_setpup_submenu(p1 : LongInt; p2 : Longint ; p3 :Longint ); cdecl;external;
-
-{
-#define fl_setpup    fl_setpup_mode
-}
-
-Const
- FL_NORMAL_POSITIONER   = 0;
-
-{**** Defaults ****}
-
- FL_POSITIONER_BOXTYPE  = FL_DOWN_BOX;
- FL_POSITIONER_COL1     = FL_COL1;
- FL_POSITIONER_COL2     = FL_RED;
- FL_POSITIONER_LCOL     = FL_LCOL;
- FL_POSITIONER_ALIGN    = FL_ALIGN_BOTTOM;
-
-{**** Others   ****}
-
-
-{**** Routines ****}
-
-Function fl_create_positioner(p1 : LongInt; p2,p3,p4,p5 : TFL_Coord; p6 : pchar) : PFL_OBJECT; cdecl;external;
-Function fl_add_positioner(p1 : LongInt; p2,p3,p4,p5 : TFL_Coord; p6 : pchar) : PFL_OBJECT; cdecl;external;
-
-Procedure fl_set_positioner_xvalue(p1 : PFL_OBJECT; p2 :  double); cdecl;external;
-Function fl_get_positioner_xvalue(p1 : PFL_OBJECT ) : double ; cdecl;external;
-Procedure fl_set_positioner_xbounds(p1 : PFL_OBJECT; p2 : double; p3 :double); cdecl;external;
-Procedure fl_get_positioner_xbounds(p1 : PFL_OBJECT; p2 : pdouble ; p3 : pdouble); cdecl;external;
-Procedure fl_set_positioner_yvalue(p1 : PFL_OBJECT; p2 :  double); cdecl;external;
-Function fl_get_positioner_yvalue(p1 : PFL_OBJECT ) : double ; cdecl;external;
-Procedure fl_set_positioner_ybounds(p1 : PFL_OBJECT; p2 : double; p3 :double); cdecl;external;
-Procedure fl_get_positioner_ybounds(p1 : PFL_OBJECT; p2 ,p3 :pdouble); cdecl;external;
-Procedure fl_set_positioner_xstep(p1 : PFL_OBJECT; p2 :  double); cdecl;external;
-Procedure fl_set_positioner_ystep(p1 : PFL_OBJECT; p2 :  double); cdecl;external;
-Procedure fl_set_positioner_return(p1 : PFL_OBJECT; p2 :  Longint ); cdecl;external;
-
-Const
-     FL_HOR_SCROLLBAR = 0;
-     FL_VERT_SCROLLBAR = 1;
-     FL_HOR_THIN_SCROLLBAR = 2;
-     FL_VERT_THIN_SCROLLBAR = 3;
-     FL_HOR_NICE_SCROLLBAR = 4;
-     FL_VERT_NICE_SCROLLBAR = 5;
-     FL_HOR_PLAIN_SCROLLBAR = 6;
-     FL_VERT_PLAIN_SCROLLBAR = 7;
-
-     FL_HOR_BASIC_SCROLLBAR = FL_HOR_PLAIN_SCROLLBAR;
-     FL_VERT_BASIC_SCROLLBAR =    FL_VERT_PLAIN_SCROLLBAR;
-
-     FL_THIN_SCROLLBAR = 0;
-     FL_PLAIN_SCROLLBAR = 1;
-     FL_NORMAL_SCROLLBAR = 2;
-     FL_NICE_SCROLLBAR = 3;
-
-Function  fl_create_scrollbar(p1 : longint;p2,p3,p4,p5 : TFL_Coord; p6 : pchar) : PFL_OBJECT ; cdecl;external;
-Function  fl_add_scrollbar(p1 : longint;p2,p3,p4,p5 : TFL_Coord; p6 : pchar) : PFL_OBJECT ; cdecl;external;
-
-Function  fl_get_scrollbar_value(p1 : PFL_OBJECT) : double ; cdecl;external;
-Procedure fl_set_scrollbar_value(p1 : PFL_OBJECT; p2: double); cdecl;external;
-Procedure fl_set_scrollbar_size(p1 : PFL_OBJECT; p2 : double); cdecl;external;
-Procedure fl_set_scrollbar_increment(p1 : PFL_OBJECT;p2,p3: double); cdecl;external;
-Procedure fl_get_scrollbar_increment(p1 : PFL_OBJECT; p2,p3 : real {float !!}); cdecl;external;
-Procedure fl_set_scrollbar_bounds(p1 : PFL_OBJECT; p2,p3 : double); cdecl;external;
-Procedure fl_get_scrollbar_bounds(p1 : PFL_OBJECT; p2,p3 : real {float !!!}); cdecl;external;
-Procedure fl_set_scrollbar_return(p1 : PFL_OBJECT; p2 : longint); cdecl;external;
-Procedure fl_set_scrollbar_step(P1 : PFL_OBJECT;p2 : double); cdecl;external;
-
-
-
-{
- *
- * Object Class: Slider
- *
- }
-
-
-Const
-    FL_VERT_SLIDER      = 0;
-    FL_HOR_SLIDER       = 1;
-    FL_VERT_FILL_SLIDER = 2;
-    FL_HOR_FILL_SLIDER  = 3;
-    FL_VERT_NICE_SLIDER = 4;
-    FL_HOR_NICE_SLIDER  = 5;
-    FL_HOR_BROWSER_SLIDER = 6;
-    FL_VERT_BROWSER_SLIDER = 7;
-    FL_HOR_BROWSER_SLIDER2      = 8;    { for Longint ernal use only }
-    FL_VERT_BROWSER_SLIDER2     = 9;    { for Longint ernal use only }
-    FL_HOR_THIN_SLIDER = 10;            { internal use          }
-    FL_VERT_THIN_SLIDER = 11;   { internal use          }
-    FL_HOR_BASIC_SLIDER = 12;   { internal use          }
-    FL_VERT_BASIC_SLIDER = 13;  { internal use          }
-
-Type
- TFL_SLIDER_TYPE = Longint;
- PFL_SLIDER_TYPE = ^TFL_SLIDER_TYPE;
-
-
-{**** Defaults ****}
-Const
-  FL_SLIDER_BW1         = FL_BOUND_WIDTH;
-  FL_SLIDER_BW2         = FL_BOUND_WIDTH-1;
-
-  FL_SLIDER_BOXTYPE     = FL_DOWN_BOX;
-  FL_SLIDER_COL1        = FL_COL1;
-  FL_SLIDER_COL2        = FL_COL1;
-  FL_SLIDER_LCOL        = FL_LCOL;
-  FL_SLIDER_ALIGN       = FL_ALIGN_BOTTOM;
-
-{**** Others   ****}
-
-  FL_SLIDER_FINE                = 0.05;
-  FL_SLIDER_WIDTH               = 0.10;
-
-
-{**** Routines ****}
-
-Function fl_create_slider(p1 : LongInt; p2,p3,p4,p5 : TFL_Coord;p6: pchar) : PFL_OBJECT; cdecl;external;
-Function fl_add_slider(p1 : LongInt; p2,p3,p4,p5 : TFL_Coord;p6: pchar) : PFL_OBJECT; cdecl;external;
-
-Function fl_create_valslider(p1 : LongInt; p2,p3,p4,p5 : TFL_Coord;p6: pchar): PFL_OBJECT; cdecl;external;
-Function fl_add_valslider(p1 : LongInt; p2,p3,p4,p5 : TFL_Coord;P6: pchar) : PFL_OBJECT; cdecl;external;
-
-Procedure fl_set_slider_value(p1 : PFL_OBJECT; p2 :  double); cdecl;external;
-Function fl_get_slider_value(p1 : PFL_OBJECT ) : double ;  cdecl;external;
-Procedure fl_set_slider_bounds(p1 : PFL_OBJECT; p2 : double; p3 :double); cdecl;external;
-Procedure fl_get_slider_bounds(p1 : PFL_OBJECT; p2,p3 : pdouble); cdecl;external;
-
-Procedure fl_set_slider_return(p1 : PFL_OBJECT; p2 :  Longint ); cdecl;external;
-
-Procedure fl_set_slider_step(p1 : PFL_OBJECT; p2 :  double); cdecl;external;
-Procedure fl_set_slider_increment(p1 : PFL_OBJECT; p2,p3 :  double); cdecl;external;
-Procedure fl_set_slider_size(p1 : PFL_OBJECT; p2 :  double); cdecl;external;
-Procedure fl_set_slider_precision(p1 : PFL_OBJECT; p2 :  Longint ); cdecl;external;
-
-Type
-  TFL_SLIDER_FILTER = Procedure (p1 : PFL_OBJECT; p2 : double; p3 :Longint ); cdecl;
-  PTFL_SLIDER_FILTER= ^TFL_SLIDER_FILTER  ;
-
-Procedure fl_set_slider_filter(p1 : PFL_OBJECT; p2 : PTFL_SLIDER_FILTER); cdecl;external;
-
-const
-FL_TOP_TABFOLDER = 0;
-FL_BOTTOM_TABFOLDER = 1;
-FL_LEFT_TABFOLDER = 2;
-FL_RIGHT_TABFOLDER = 3;
-
-FL_NORMAL_TABFOLDER = FL_TOP_TABFOLDER;
-
-Function fl_create_tabfolder (p1 : longint;p2,p3,p4,p5 : TFL_Coord; p6 : pchar) : PFL_OBJECT ; cdecl;external;
-Function fl_add_tabfolder(p1 : longint;p2,p3,p4,p5 : TFL_Coord; p6 : pchar) : PFL_OBJECT ; cdecl;external;
-Function fl_addto_tabfolder(p1 : PFL_OBJECT; p2 : pchar; p3 : PFL_FORM) : PFL_OBJECT; cdecl;external;
-Procedure fl_delete_folder(p1 : PFL_OBJECT; p2 : PFL_FORM); cdecl;external;
-Procedure fl_delete_folder_bynumber(p1 : PFL_OBJECT; p2 : longint); cdecl;external;
-Procedure fl_delete_folder_byname(p1 : PFL_OBJECT; p2 : pchar); cdecl;external;
-
-Procedure fl_set_folder(p1 : PFL_OBJECT; P2 : PFL_FORM); cdecl;external;
-Procedure fl_set_folder_byname(p1 : PFL_OBJECT; p2 : pchar); cdecl;external;
-Procedure fl_set_folder_bynumber(p1 : PFL_OBJECT; p2 : longint); cdecl;external;
-Function fl_get_folder(p1 : PFL_OBJECT) : PFL_FORM; cdecl;external;
-Function fl_get_folder_number(p1 : PFL_OBJECT) : longint; cdecl;external;
-Function fl_get_folder_name(p1 : PFL_OBJECT) : pchar; cdecl;external;
-Function fl_get_active_folder(p1 : PFL_OBJECT) : PFL_FORM; cdecl;external;
-Function fl_get_active_folder_number(P1 : PFL_OBJECT) : longint; cdecl;external;
-Function fl_get_active_folder_name(p1 : PFL_OBJECT) : Pchar; cdecl;external;
-Procedure fl_get_folder_area(p1 : PFL_OBJECT; p2,p3,p4,p5 : PFL_Coord); cdecl;external;
-
-Procedure fl_replace_folder_bynumber(p1 : PFL_OBJECT;p2 : longint;p3 : PFL_FORM); cdecl;external;
-
-Const
-    FL_NORMAL_TEXT = 0;
-
- FL_TEXT_BOXTYPE    = FL_FLAT_BOX;
- FL_TEXT_COL1       = FL_COL1;
- FL_TEXT_COL2       = FL_MCOL;
- FL_TEXT_LCOL       = FL_LCOL;
- FL_TEXT_ALIGN      = FL_ALIGN_LEFT;
-
-Function fl_create_text(p1 : LongInt; p2,p3,p4,p5 : TFL_Coord; p6 : pchar) : PFL_OBJECT; cdecl;external;
-Function fl_add_text(p1 : LongInt; p2,p3,p4,p5 : TFL_Coord; p6 : pchar): PFL_OBJECT; cdecl;external;
-
-
-
-{
- *
- *  Object Class: Timer
- *
- }
-
-
-Const
-    FL_NORMAL_TIMER = 0;
-    FL_VALUE_TIMER  = 1;
-    FL_HIDDEN_TIMER = 2;
-
-Type TFL_TIMER_TYPE = Longint;
-
-{**** Defaults ****}
-Const
-
-FL_TIMER_BOXTYPE        = FL_DOWN_BOX;
-FL_TIMER_COL1           = FL_COL1;
-FL_TIMER_COL2           = FL_RED;
-FL_TIMER_LCOL           = FL_LCOL;
-FL_TIMER_ALIGN          = FL_ALIGN_CENTER;
-
-{**** Others   ****}
-
-  FL_TIMER_BLINKRATE    = 0.2;
-
-Type TFL_TIMER_FILTER = Function (P1 : PFL_OBJECT;p2 : double) : pchar; cdecl;
-     PFL_TIMER_FILTER = ^TFL_TIMER_FILTER;
-
-{**** Routines ****}
-
-Function fl_create_timer(p1 : LongInt; p2,p3,p4,p5 : TFL_Coord;p6 : pchar) : PFL_OBJECT; cdecl;external;
-
-Function fl_add_timer(p1 : LongInt; p2,p3,p4,p5 : TFL_Coord;p6: pchar) : PFL_OBJECT; cdecl;external;
-
-Procedure fl_set_timer(p1 : PFL_OBJECT; p2 :  double); cdecl;external;
-Function fl_get_timer(p1 : PFL_OBJECT ) : double ;  cdecl;external;
-Procedure fl_set_timer_countup(p1 : PFL_OBJECT; p2 :  Longint); cdecl;external;
-Function fl_set_timer_filter (p1 : PFL_OBJECT; p2 : PFL_TIMER_FILTER) : PFL_TIMER_FILTER; cdecl;external;
-Procedure fl_suspend_timer(p1 : PFL_OBJECT); cdecl;external;
-Procedure fl_resume_timer(p1 : PFL_OBJECT); cdecl;external;
-
-{
- * Class FL_XYPLOT
- }
-
-Const
-    FL_NORMAL_XYPLOT    = 0;            { solid line                        }
-    FL_SQUARE_XYPLOT    = 1;            { with added square                 }
-    FL_CIRCLE_XYPLOT    = 2;            { with added circle                 }
-    FL_FILL_XYPLOT      = 3;            { fill completely                   }
-    FL_POINTS_XYPLOT    = 4;            { only data points                  }
-    FL_DASHED_XYPLOT    = 5;            { dashed line                       }
-    FL_IMPULSE_XYPLOT   = 6;
-    FL_ACTIVE_XYPLOT    = 7;            { accepts Longint eractive manipulations }
-    FL_EMPTY_XYPLOT     = 8;
-Type
-    TFL_XYPLOT_TYPE = Longint;
-
-Const
-    FL_LINEAR = 0;
-    FL_LOG    = 1;
-
-Const
-    FL_GRID_NONE  = 0;
-    FL_GRID_MAJOR = 1;
-    FL_GRID_MINOR = 2;
-
-{**** Defaults ****}
-
- FL_XYPLOT_BOXTYPE       = FL_FLAT_BOX;
- FL_XYPLOT_COL1          = FL_COL1;
- FL_XYPLOT_LCOL          = FL_LCOL;
- FL_XYPLOT_ALIGN         = FL_ALIGN_BOTTOM;
- FL_MAX_XYPLOTOVERLAY    = 32;
-
-{**** Others   ****}
-
-Function fl_create_xyplot(p1 : LongInt; p2,p3,p4,p5 : TFL_Coord; p6: pchar) : PFL_OBJECT; cdecl;external;
-Function fl_add_xyplot(p1 : LongInt; p2,p3,p4,p5 : TFL_Coord; P6 : pchar ) : PFL_OBJECT; cdecl;external;
-Procedure fl_set_xyplot_data(p1 : PFL_OBJECT; p2,p3 : pfloat; p4 : Longint ; p5,p6,p7 : pchar); cdecl;external;
-Procedure fl_set_xyplot_file(p1 : PFL_OBJECT; p2,p3,p4,p5 :pchar); cdecl;external;
-
-Procedure fl_set_xyplot_return(p1 : PFL_OBJECT; p2 :  Longint ); cdecl;external;
-Procedure fl_set_xyplot_xtics(p1 : PFL_OBJECT; p2 : Longint ; p3 :Longint ); cdecl;external;
-Procedure fl_set_xyplot_ytics(p1 : PFL_OBJECT; p2 : Longint ; p3 :Longint ); cdecl;external;
-Procedure fl_set_xyplot_xbounds(p1 : PFL_OBJECT; p2 : double; p3 :double); cdecl;external;
-Procedure fl_set_xyplot_ybounds(p1 : PFL_OBJECT; p2 : double; p3 :double); cdecl;external;
-Function  fl_set_xyplot_maxoverlays(p1 : PFL_OBJECT; p2 :  Longint  ) : Longint ; cdecl;external;
-Procedure fl_set_xyplot_overlay_type(p1 : PFL_OBJECT; p2 : Longint ; p3 : Longint ); cdecl;external;
-Procedure fl_set_xyplot_interpolate(p1 : PFL_OBJECT; p2 : Longint ; p3 : Longint ; p4 : double); cdecl;external;
-Procedure fl_set_xyplot_fontsize(p1 : PFL_OBJECT; p2 :  Longint ); cdecl;external;
-Procedure fl_set_xyplot_fontstyle(p1 : PFL_OBJECT; p2 :  Longint ); cdecl;external;
-Procedure fl_set_xyplot_inspect(p1 : PFL_OBJECT; p2 :  Longint ); cdecl;external;
-Procedure fl_set_xyplot_symbolsize(p1 : PFL_OBJECT; p2 :  Longint ); cdecl;external;
-Procedure fl_set_xyplot_xscale(p1 : PFL_OBJECT; p2 : Longint ; p3 :double); cdecl;external;
-Procedure fl_set_xyplot_yscale(p1 : PFL_OBJECT; p2 : Longint ; p3 :double); cdecl;external;
-
-Procedure fl_set_xyplot_linewidth(p1 : PFL_OBJECT; p2,p3 : Longint); cdecl;external;
-Procedure fl_set_xyplot_xgrid(p1 : PFL_OBJECT; p2 : Longint); cdecl;external;
-Procedure fl_set_xyplot_ygrid(p1 : PFL_OBJECT; p2 : Longint); cdecl;external;
-Procedure fl_set_xyplot_alphaxtics(p1 : PFL_OBJECT; p2,p3 : pchar); cdecl;external;
-Procedure fl_set_xyplot_alphaytics(p1 : PFL_OBJECT; p2,p3 : pchar); cdecl;external;
-Procedure fl_set_xyplot_fixed_xaxis(p1 : PFL_OBJECT; p2,p3 : pchar); cdecl;external;
-Procedure fl_set_xyplot_fixed_yaxis(p1 : PFL_OBJECT; p2,p3 : pchar); cdecl;external;
-
-
-Procedure fl_get_xyplot_xbounds(p1 : PFL_OBJECT; p2,p3 : pfloat ); cdecl;external;
-Procedure fl_get_xyplot_ybounds(p1 : PFL_OBJECT; p2,p3 : pfloat ); cdecl;external;
-Procedure fl_get_xyplot(p1 : PFL_OBJECT; p2,p3 : pfloat; p4 : pointer); cdecl;external;
-Procedure fl_get_xyplot_data(p1 : PFL_OBJECT; p2,p3 : pfloat; p4 : pointer); cdecl;external;
-Procedure fl_get_xyplot_xmapping(p1 : PFL_OBJECT; p2,p3 : pfloat); cdecl;external;
-Procedure fl_get_xyplot_ymapping(p1 : PFL_OBJECT; p2,p3 : pfloat); cdecl;external;
-
-{
-#define fl_set_xyplot_datafile fl_set_xyplot_file
-}
-Procedure fl_add_xyplot_text(p1 : PFL_OBJECT; p2,p3 : double; p4 : pchar;p5 : Longint ; p6 :TFL_COLOR); cdecl;external;
-Procedure fl_add_xyplot_overlay(p1 : PFL_OBJECT; p2 : Longint ; p3,p4 : pfloat; p5 : Longint ; p6 :TFL_COLOR); cdecl;external;
-Procedure fl_delete_xyplot_text(p1 : PFL_OBJECT; p2 :  pchar); cdecl;external;
-Procedure fl_delete_xyplot_overlay(p1 : PFL_OBJECT; p2 :  Longint ); cdecl;external;
-
-Procedure fl_replace_xyplot_point(p1 : PFL_OBJECT; p2 : Longint ; p3 : double; p4 : double); cdecl;external;
-Function  fl_interpolate(p1,p2 : pfloat; p3 :Longint ;p4,p5 : pfloat; p6 : double; p7 : Longint ) : Longint; cdecl;external;
-Procedure fl_xyplot_s2w(p1 : PFL_OBJECT; p2 : double; p3 : double; p4,p5 : pfloat); cdecl;external;
-Procedure fl_xyplot_w2s(p1 : PFL_OBJECT; p2 : double; p3 : double; p4,p5 : pfloat); cdecl;external;
-
-implementation
-
-{ From here we implement function aliases which were #defined }
-
-procedure fl_set_button_shortcut(p1 : PFL_OBJECT; p2 : pchar;p3 : Longint );
-
-begin
-  fl_set_object_shortcut (p1,p2,p3);
-end;
-
-procedure fl_set_pixmapbutton_data(p1 : PFL_OBJECT; p2 :  ppchar);
-
-begin
- fl_set_pixmap_data(p1,p2);
-end;
-
-procedure fl_set_pixmapbutton_file(p1 : PFL_OBJECT; p2 :  pchar);
-
-begin
-  fl_set_pixmap_file(p1,p2);
-end;
-
-procedure fl_set_pixmapbutton_align(p1 : PFL_OBJECT; p2 : Longint ; p3 : Longint ; p4 : Longint );
-begin
-  fl_set_pixmap_align(p1,p2,p3,p4);
-end;
-
-procedure fl_set_pixmapbutton_pixmap(p1 : PFL_OBJECT; p2 : TPixmap; p3 :TPixmap);
-begin
- fl_set_pixmap_pixmap(p1,p2,p3);
-end;
-
-procedure fl_set_pixmapbutton_colorcloseness(p1 : Longint ; p2 : Longint ; p3 :Longint );
-begin
-fl_set_pixmap_colorcloseness(p1,p2,p3);
-end;
-
-procedure fl_free_pixmapbutton_pixmap(p1 : PFL_OBJECT);
-begin
-  fl_free_pixmap_pixmap(p1);
-end;
-
-function fl_get_pixmapbutton_pixmap(p1 : PFL_OBJECT; p2 : PPixmap; p3 : PPixmap) : TPixmap ;
-
-begin
- fl_get_pixmapbutton_pixmap:=fl_get_pixmap_pixmap(p1,p2,p3);
-end;
-
-Function FL_ObjWin ( P : PFL_Object) : TWindow;
-
-begin
-if P^.objclass <> FL_CANVAS then
-    FL_ObjWin :=P^.form^.window
-else
-    FL_objWin := fl_get_canvas_id (p)
-end;
-
-procedure fl_rectf(x,y,w,h : TFL_COORD;c : TFL_COLOR);
-begin
-   fl_rectangle(1,x,y,w,h,c)
-end;
-
-procedure fl_rect(x,y,w,h : TFL_COORD;c : TFL_COLOR);
-begin
-    fl_rectangle(0,x,y,w,h,c)
-end;
-
-
-procedure fl_set_canvas_decoration(p1 : PFL_OBJECT; p2 :  Longint );
-
-begin
-fl_set_object_boxtype (p1,p2);
-end;
-
-function fl_setpup_default_fontsize(p1 : LongInt) : Longint;
-
-begin
- fl_setpup_default_fontsize:=fl_setpup_fontsize(p1)
-end;
-
-function fl_setpup_default_fontstyle(p1 : LongInt) : Longint;
-
-begin
- fl_setpup_default_fontstyle:=fl_setpup_fontstyle(p1);
-end;
-
-procedure fl_setpup_default_color(p1 : TFL_COLOR; p2 :  TFL_COLOR);
-begin
- fl_setpup_color(p1,p2);
-end;
-
-procedure fl_setpup_default_checkcolor(p1 : TFL_COLOR);
-begin
-  fl_setpup_default_checkcolor(p1);
-end;
-
-end.
-{
-  $Log$
-  Revision 1.3  2001-01-09 21:06:27  michael
-  + merged Adding of PCardinal type
-
-  Revision 1.2  2000/07/13 11:33:11  michael
-  + removed logs
-
-  Revision 1.1.2.1  2001/01/09 21:04:41  michael
-  + Added PCardinal type
-
-  Revision 1.1  2000/07/13 06:33:54  michael
-  + Initial import
-
-  Revision 1.2  2000/02/27 14:40:40  peter
-    * removed warnings/notes
-
-}

+ 0 - 1312
packages/gdbint/Makefile

@@ -1,1312 +0,0 @@
-#
-# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/27]
-#
-default: all
-MAKEFILETARGETS=linux go32v2 win32 os2 freebsd beos netbsd amiga atari sunos qnx
-override PATH:=$(subst \,/,$(PATH))
-ifeq ($(findstring ;,$(PATH)),)
-inUnix=1
-SEARCHPATH:=$(filter-out .,$(subst :, ,$(PATH)))
-else
-SEARCHPATH:=$(subst ;, ,$(PATH))
-endif
-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 cygwin,$(MACHTYPE)),)
-inCygWin=1
-endif
-endif
-ifeq ($(OS_TARGET),freebsd)
-BSDhier=1
-endif
-ifeq ($(OS_TARGET),netbsd)
-BSDhier=1
-endif
-ifdef inUnix
-BATCHEXT=.sh
-else
-ifdef inOS2
-BATCHEXT=.cmd
-else
-BATCHEXT=.bat
-endif
-endif
-ifdef inUnix
-PATHSEP=/
-else
-PATHSEP:=$(subst /,\,/)
-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
-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=ppc386
-endif
-else
-override FPC=ppc386
-endif
-endif
-override FPC:=$(subst $(SRCEXEEXT),,$(FPC))
-override FPC:=$(subst \,/,$(FPC))$(SRCEXEEXT)
-ifndef FPC_VERSION
-FPC_VERSION:=$(shell $(FPC) -iV)
-endif
-export FPC FPC_VERSION
-ifeq ($(findstring 1.0.,$(FPC_VERSION)),)
-COMPILERINFO:=$(shell $(FPC) -iSP -iTP -iSO -iTO)
-ifndef CPU_SOURCE
-CPU_SOURCE:=$(word 1,$(COMPILERINFO))
-endif
-ifndef CPU_TARGET
-CPU_TARGET:=$(word 2,$(COMPILERINFO))
-endif
-ifndef OS_SOURCE
-OS_SOURCE:=$(word 3,$(COMPILERINFO))
-endif
-ifndef OS_TARGET
-OS_TARGET:=$(word 4,$(COMPILERINFO))
-endif
-else
-ifndef CPU_SOURCE
-CPU_SOURCE:=$(shell $(FPC) -iSP)
-endif
-ifndef CPU_TARGET
-CPU_TARGET:=$(shell $(FPC) -iTP)
-endif
-ifndef OS_SOURCE
-OS_SOURCE:=$(shell $(FPC) -iSO)
-endif
-ifndef OS_TARGET
-OS_TARGET:=$(shell $(FPC) -iTO)
-endif
-endif
-FULL_TARGET=$(CPU_TARGET)-$(OS_TARGET)
-FULL_SOURCE=$(CPU_SOURCE)-$(OS_SOURCE)
-ifneq ($(FULL_TARGET),$(FULL_SOURCE))
-CROSSCOMPILE=1
-endif
-ifeq ($(findstring makefile,$(MAKECMDGOALS)),)
-ifeq ($(findstring $(OS_TARGET),$(MAKEFILETARGETS)),)
-$(error The Makefile doesn't support target $(OS_TARGET), please run fpcmake first)
-endif
-endif
-export OS_TARGET OS_SOURCE CPU_TARGET CPU_SOURCE FULL_TARGET FULL_SOURCE 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=c:/pp
-endif
-endif
-endif
-endif
-ifndef CROSSDIR
-CROSSDIR:=$(FPCDIR)/cross/$(FULL_TARGET)
-endif
-ifndef CROSSTARGETDIR
-CROSSTARGETDIR=$(CROSSDIR)/$(FULL_TARGET)
-endif
-ifdef CROSSCOMPILE
-UNITSDIR:=$(wildcard $(CROSSTARGETDIR)/units)
-ifeq ($(UNITSDIR),)
-UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
-endif
-else
-UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
-endif
-PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages)
-override PACKAGE_NAME=gdbint
-override PACKAGE_VERSION=1.0.5
-override TARGET_UNITS+=gdbint gdbcon
-override TARGET_EXAMPLES+=testgdb symify
-override INSTALL_FPCPACKAGE=y
-override COMPILER_OBJECTDIR+=libgdb/$(OS_TARGET)
-override COMPILER_LIBRARYDIR+=libgdb/$(OS_TARGET)
-ifdef REQUIRE_UNITSDIR
-override UNITSDIR+=$(REQUIRE_UNITSDIR)
-endif
-ifdef REQUIRE_PACKAGESDIR
-override PACKAGESDIR+=$(REQUIRE_PACKAGESDIR)
-endif
-ifdef ZIPINSTALL
-ifeq ($(OS_TARGET),linux)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_TARGET),freebsd)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_TARGET),netbsd)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_TARGET),sunos)
-UNIXINSTALLDIR=1
-endif
-else
-ifeq ($(OS_SOURCE),linux)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_SOURCE),freebsd)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_SOURCE),netbsd)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_TARGET),sunos)
-UNIXINSTALLDIR=1
-endif
-endif
-ifndef INSTALL_PREFIX
-ifdef PREFIX
-INSTALL_PREFIX=$(PREFIX)
-endif
-endif
-ifndef INSTALL_PREFIX
-ifdef UNIXINSTALLDIR
-INSTALL_PREFIX=/usr/local
-else
-ifdef INSTALL_FPCPACKAGE
-INSTALL_BASEDIR:=/pp
-else
-INSTALL_BASEDIR:=/$(PACKAGE_NAME)
-endif
-endif
-endif
-export INSTALL_PREFIX
-ifndef DIST_DESTDIR
-DIST_DESTDIR:=$(BASEDIR)
-endif
-export DIST_DESTDIR
-ifndef INSTALL_BASEDIR
-ifdef UNIXINSTALLDIR
-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 UNIXINSTALLDIR
-INSTALL_BINDIR:=$(INSTALL_PREFIX)/bin
-else
-INSTALL_BINDIR:=$(INSTALL_BASEDIR)/bin
-ifdef INSTALL_FPCPACKAGE
-INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(OS_TARGET)
-endif
-endif
-endif
-ifndef INSTALL_UNITDIR
-ifdef CROSSCOMPILE
-INSTALL_UNITDIR:=$(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/units
-else
-INSTALL_UNITDIR:=$(INSTALL_BASEDIR)/units/$(OS_TARGET)
-endif
-ifdef INSTALL_FPCPACKAGE
-ifdef PACKAGE_NAME
-INSTALL_UNITDIR:=$(INSTALL_UNITDIR)/$(PACKAGE_NAME)
-endif
-endif
-endif
-ifndef INSTALL_LIBDIR
-ifdef UNIXINSTALLDIR
-INSTALL_LIBDIR:=$(INSTALL_PREFIX)/lib
-else
-INSTALL_LIBDIR:=$(INSTALL_UNITDIR)
-endif
-endif
-ifndef INSTALL_SOURCEDIR
-ifdef UNIXINSTALLDIR
-ifdef INSTALL_FPCPACKAGE
-ifdef BSDhier
-INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/share/src/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-else
-INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/src/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-endif
-else
-ifdef BSDhier
-INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/share/src/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-else
-INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/src/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-endif
-endif
-else
-ifdef INSTALL_FPCPACKAGE
-INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source/$(PACKAGE_NAME)
-else
-INSTALL_SOURCEDIRL:=$(INSTALL_BASEDIR)/source
-endif
-endif
-endif
-ifndef INSTALL_DOCDIR
-ifdef UNIXINSTALLDIR
-ifdef INSTALL_FPCPACKAGE
-ifdef BSDhier
-INSTALL_DOCDIR:=$(INSTALL_PREFIX)/share/doc/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-else
-INSTALL_DOCDIR:=$(INSTALL_PREFIX)/doc/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-endif
-else
-ifdef BSDhier
-INSTALL_DOCDIR:=$(INSTALL_PREFIX)/share/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-else
-INSTALL_DOCDIR:=$(INSTALL_PREFIX)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-endif
-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 UNIXINSTALLDIR
-ifdef INSTALL_FPCPACKAGE
-ifdef BSDhier
-INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-else
-INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/fpc-$(FPC_VERSION)/examples/$(PACKAGE_NAME)
-endif
-else
-ifdef BSDhier
-INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-else
-INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-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
-ifdef CROSSCOMPILE
-ifndef CROSSBINDIR
-CROSSBINDIR:=$(wildcard $(CROSSTARGETDIR)/bin/$(FULL_SOURCE))
-ifeq ($(CROSSBINDIR),)
-CROSSBINDIR:=$(wildcard $(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/bin/$(FULL_SOURCE))
-endif
-endif
-else
-CROSSBINDIR=
-endif
-ifdef inUnix
-ifndef GCCLIBDIR
-GCCLIBDIR:=$(shell dirname `(gcc -v 2>&1)| head -n 1| awk '{ print $$4 } '`)
-endif
-ifeq ($(OS_TARGET),linux)
-ifndef OTHERLIBDIR
-OTHERLIBDIR:=$(shell grep -v "^\#" /etc/ld.so.conf | awk '{ ORS=" "; print $1 }')
-endif
-endif
-ifeq ($(OS_TARGET),netbsd)
-OTHERLIBDIR+=/usr/pkg/lib
-endif
-export GCCLIBDIR OTHERLIB
-endif
-LOADEREXT=.as
-EXEEXT=.exe
-PPLEXT=.ppl
-PPUEXT=.ppu
-OEXT=.o
-ASMEXT=.s
-SMARTEXT=.sl
-STATICLIBEXT=.a
-SHAREDLIBEXT=.so
-STATICLIBPREFIX=libp
-RSTEXT=.rst
-FPCMADE=fpcmade
-ifeq ($(OS_TARGET),go32v1)
-PPUEXT=.pp1
-OEXT=.o1
-ASMEXT=.s1
-SMARTEXT=.sl1
-STATICLIBEXT=.a1
-SHAREDLIBEXT=.so1
-STATICLIBPREFIX=
-FPCMADE=fpcmade.v1
-PACKAGESUFFIX=v1
-endif
-ifeq ($(OS_TARGET),go32v2)
-STATICLIBPREFIX=
-FPCMADE=fpcmade.dos
-ZIPSUFFIX=go32
-endif
-ifeq ($(OS_TARGET),linux)
-EXEEXT=
-HASSHAREDLIB=1
-FPCMADE=fpcmade.lnx
-ZIPSUFFIX=linux
-endif
-ifeq ($(OS_TARGET),freebsd)
-EXEEXT=
-HASSHAREDLIB=1
-FPCMADE=fpcmade.freebsd
-ZIPSUFFIX=freebsd
-endif
-ifeq ($(OS_TARGET),netbsd)
-EXEEXT=
-HASSHAREDLIB=1
-FPCMADE=fpcmade.netbsd
-ZIPSUFFIX=netbsd
-endif
-ifeq ($(OS_TARGET),win32)
-PPUEXT=.ppw
-OEXT=.ow
-ASMEXT=.sw
-SMARTEXT=.slw
-STATICLIBEXT=.aw
-SHAREDLIBEXT=.dll
-FPCMADE=fpcmade.w32
-ZIPSUFFIX=w32
-endif
-ifeq ($(OS_TARGET),os2)
-PPUEXT=.ppo
-ASMEXT=.so2
-OEXT=.oo2
-AOUTEXT=.out
-SMARTEXT=.so
-STATICLIBEXT=.ao2
-SHAREDLIBEXT=.dll
-FPCMADE=fpcmade.os2
-ZIPSUFFIX=emx
-endif
-ifeq ($(OS_TARGET),amiga)
-EXEEXT=
-PPUEXT=.ppa
-ASMEXT=.asm
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-SHAREDLIBEXT=.library
-FPCMADE=fpcmade.amg
-endif
-ifeq ($(OS_TARGET),atari)
-PPUEXT=.ppt
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=.ttp
-FPCMADE=fpcmade.ata
-endif
-ifeq ($(OS_TARGET),beos)
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=
-FPCMADE=fpcmade.be
-ZIPSUFFIX=be
-endif
-ifeq ($(OS_TARGET),sunos)
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=
-FPCMADE=fpcmade.sun
-ZIPSUFFIX=sun
-endif
-ifeq ($(OS_TARGET),qnx)
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=
-FPCMADE=fpcmade.qnx
-ZIPSUFFIX=qnx
-endif
-ifndef ECHO
-ECHO:=$(strip $(wildcard $(addsuffix /gecho$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(ECHO),)
-ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(ECHO),)
-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=
-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=
-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=
-else
-CPPROG:=$(firstword $(CPPROG))
-endif
-endif
-export CPPROG
-ifndef RMPROG
-RMPROG:=$(strip $(wildcard $(addsuffix /rm$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(RMPROG),)
-RMPROG=
-else
-RMPROG:=$(firstword $(RMPROG))
-endif
-endif
-export RMPROG
-ifndef MVPROG
-MVPROG:=$(strip $(wildcard $(addsuffix /mv$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(MVPROG),)
-MVPROG=
-else
-MVPROG:=$(firstword $(MVPROG))
-endif
-endif
-export MVPROG
-ifndef ECHOREDIR
-ECHOREDIR:=$(subst /,$(PATHSEP),$(ECHO))
-endif
-ifndef COPY
-COPY:=$(CPPROG) -fp
-endif
-ifndef COPYTREE
-COPYTREE:=$(CPPROG) -rfp
-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=
-else
-PPUMOVE:=$(firstword $(PPUMOVE))
-endif
-endif
-export PPUMOVE
-ifndef FPCMAKE
-FPCMAKE:=$(strip $(wildcard $(addsuffix /fpcmake$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(FPCMAKE),)
-FPCMAKE=
-else
-FPCMAKE:=$(firstword $(FPCMAKE))
-endif
-endif
-export FPCMAKE
-ifndef ZIPPROG
-ZIPPROG:=$(strip $(wildcard $(addsuffix /zip$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(ZIPPROG),)
-ZIPPROG=
-else
-ZIPPROG:=$(firstword $(ZIPPROG))
-endif
-endif
-export ZIPPROG
-ifndef TARPROG
-TARPROG:=$(strip $(wildcard $(addsuffix /tar$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(TARPROG),)
-TARPROG=
-else
-TARPROG:=$(firstword $(TARPROG))
-endif
-endif
-export TARPROG
-ASNAME=as
-LDNAME=ld
-ARNAME=ar
-RCNAME=rc
-ifeq ($(OS_TARGET),win32)
-ASNAME=asw
-LDNAME=ldw
-ARNAME=arw
-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$(BATCHEXT)
-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=vI
-TAREXT=.tar.bz2
-else
-TAROPT=vz
-TAREXT=.tar.gz
-endif
-override REQUIRE_PACKAGES=rtl 
-ifeq ($(OS_TARGET),linux)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(OS_TARGET),go32v2)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(OS_TARGET),win32)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(OS_TARGET),os2)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(OS_TARGET),freebsd)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(OS_TARGET),beos)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(OS_TARGET),netbsd)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(OS_TARGET),amiga)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(OS_TARGET),atari)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(OS_TARGET),sunos)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(OS_TARGET),qnx)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifdef REQUIRE_PACKAGES_RTL
-PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
-ifneq ($(PACKAGEDIR_RTL),)
-ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
-UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
-else
-UNITDIR_RTL=$(PACKAGEDIR_RTL)
-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
-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
-ifeq ($(CPU_TARGET),i386)
-FPCCPUOPT:=-OG2p3
-else
-FPCCPUOPT:=
-endif
-override FPCOPT+=-Xs $(FPCCPUOPT) -n
-override FPCOPTDEF+=RELEASE
-endif
-ifdef STRIP
-override FPCOPT+=-Xs
-endif
-ifdef OPTIMIZE
-ifeq ($(CPU_TARGET),i386)
-override FPCOPT+=-OG2p3
-endif
-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 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 COMPILER:=$(FPC) $(FPCOPT)
-ifeq (,$(findstring -s ,$(COMPILER)))
-EXECPPAS=
-else
-ifeq ($(OS_SOURCE),$(OS_TARGET))
-EXECPPAS:=@$(PPAS)
-endif
-endif
-.PHONY: fpc_units
-ifdef 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: $(UNITPPUFILES)
-ifdef TARGET_RSTS
-override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS))
-override CLEANRSTFILES+=$(RSTFILES)
-endif
-.PHONY: fpc_examples
-ifdef TARGET_EXAMPLES
-HASEXAMPLES=1
-override EXAMPLESOURCEFILES:=$(wildcard $(addsuffix .pp,$(TARGET_EXAMPLES)) $(addsuffix .pas,$(TARGET_EXAMPLES)))
-override EXAMPLEFILES:=$(addsuffix $(EXEEXT),$(TARGET_EXAMPLES))
-override EXAMPLEOFILES:=$(addsuffix $(OEXT),$(TARGET_EXAMPLES)) $(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_EXAMPLES)))
-override CLEANEXEFILES+=$(EXAMPLEFILES) $(EXAMPLEOFILES)
-ifeq ($(OS_TARGET),os2)
-override CLEANEXEFILES+=$(addsuffix $(AOUTEXT),$(TARGET_EXAMPLES))
-endif
-endif
-ifdef TARGET_EXAMPLEDIRS
-HASEXAMPLES=1
-endif
-fpc_examples: all $(EXAMPLEFILES) $(addsuffix _all,$(TARGET_EXAMPLEDIRS))
-.PHONY: fpc_all fpc_smart fpc_debug fpc_release
-$(FPCMADE): $(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 .pp .rc .res
-%$(PPUEXT): %.pp
-	$(COMPILER) $<
-	$(EXECPPAS)
-%$(PPUEXT): %.pas
-	$(COMPILER) $<
-	$(EXECPPAS)
-%$(EXEEXT): %.pp
-	$(COMPILER) $<
-	$(EXECPPAS)
-%$(EXEEXT): %.pas
-	$(COMPILER) $<
-	$(EXECPPAS)
-%.res: %.rc
-	windres -i $< -o $@
-vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
-vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
-vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
-.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),$(INSTALLPPUFILES))
-endif
-ifdef INSTALLPPUFILES
-override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
-override INSTALLPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPUFILES))
-override INSTALLPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPULINKFILES)))
-override INSTALL_CREATEPACKAGEFPC=1
-endif
-ifdef INSTALLEXEFILES
-override INSTALLEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(INSTALLEXEFILES))
-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$(OS_TARGET) Makefile.fpc
-	$(MKDIR) $(INSTALL_UNITDIR)
-	$(INSTALL) Package.fpc $(INSTALL_UNITDIR)
-endif
-endif
-endif
-endif
-ifdef INSTALLPPUFILES
-	$(MKDIR) $(INSTALL_UNITDIR)
-	$(INSTALL) $(INSTALLPPUFILES) $(INSTALL_UNITDIR)
-ifneq ($(INSTALLPPULINKFILES),)
-	$(INSTALL) $(INSTALLPPULINKFILES) $(INSTALL_UNITDIR)
-endif
-ifneq ($(wildcard $(LIB_FULLNAME)),)
-	$(MKDIR) $(INSTALL_LIBDIR)
-	$(INSTALL) $(LIB_FULLNAME) $(INSTALL_LIBDIR)
-ifdef inUnix
-	ln -sf $(LIB_FULLNAME) $(INSTALL_LIBDIR)/$(LIB_NAME)
-endif
-endif
-endif
-ifdef INSTALL_FILES
-	$(MKDIR) $(INSTALL_DATADIR)
-	$(INSTALL) $(INSTALL_FILES) $(INSTALL_DATADIR)
-endif
-fpc_sourceinstall: distclean
-	$(MKDIR) $(INSTALL_SOURCEDIR)
-	$(COPYTREE) $(BASEDIR) $(INSTALL_SOURCEDIR)
-fpc_exampleinstall: $(addsuffix _distclean,$(TARGET_EXAMPLEDIRS))
-ifdef HASEXAMPLES
-	$(MKDIR) $(INSTALL_EXAMPLEDIR)
-endif
-ifdef EXAMPLESOURCEFILES
-	$(COPY) $(EXAMPLESOURCEFILES) $(INSTALL_EXAMPLEDIR)
-endif
-ifdef TARGET_EXAMPLEDIRS
-	$(COPYTREE) $(addsuffix /*,$(TARGET_EXAMPLEDIRS)) $(INSTALL_EXAMPLEDIR)
-endif
-.PHONY: fpc_distinstall
-fpc_distinstall: install exampleinstall
-.PHONY: fpc_zipinstall fpc_zipsourceinstall fpc_zipexampleinstall
-ifndef PACKDIR
-ifndef inUnix
-PACKDIR=$(BASEDIR)/../fpc-pack
-else
-PACKDIR=/tmp/fpc-pack
-endif
-endif
-ifndef ZIPNAME
-ifdef DIST_ZIPNAME
-ZIPNAME=$(DIST_ZIPNAME)
-else
-ZIPNAME=$(ZIPPREFIX)$(PACKAGE_NAME)$(ZIPSUFFIX)
-endif
-endif
-ifndef ZIPTARGET
-ifdef DIST_ZIPTARGET
-ZIPTARGET=DIST_ZIPTARGET
-else
-ZIPTARGET=install
-endif
-endif
-ifndef USEZIP
-ifdef inUnix
-USETAR=1
-endif
-endif
-ifndef inUnix
-USEZIPWRAPPER=1
-endif
-ifdef USEZIPWRAPPER
-ZIPPATHSEP=$(PATHSEP)
-ZIPWRAPPER=$(subst /,$(PATHSEP),$(DIST_DESTDIR)/fpczip$(BATCHEXT))
-else
-ZIPPATHSEP=/
-endif
-ZIPCMD_CDPACK:=cd $(subst /,$(ZIPPATHSEP),$(PACKDIR))
-ZIPCMD_CDBASE:=cd $(subst /,$(ZIPPATHSEP),$(BASEDIR))
-ifdef USETAR
-ZIPDESTFILE:=$(DIST_DESTDIR)/$(ZIPNAME)$(TAREXT)
-ZIPCMD_ZIP:=$(TARPROG) cf$(TAROPT) $(ZIPDESTFILE) *
-else
-ZIPDESTFILE:=$(DIST_DESTDIR)/$(ZIPNAME)$(ZIPEXT)
-ZIPCMD_ZIP:=$(subst /,$(ZIPPATHSEP),$(ZIPPROG)) -Dr $(ZIPOPT) $(ZIPDESTFILE) *
-endif
-fpc_zipinstall:
-	$(MAKE) $(ZIPTARGET) INSTALL_PREFIX=$(PACKDIR) ZIPINSTALL=1
-	$(MKDIR) $(DIST_DESTDIR)
-	$(DEL) $(ZIPDESTFILE)
-ifdef USEZIPWRAPPER
-ifneq ($(ECHOREDIR),echo)
-	$(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_CDPACK))" > $(ZIPWRAPPER)
-	$(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_ZIP))" >> $(ZIPWRAPPER)
-	$(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_CDBASE))" >> $(ZIPWRAPPER)
-else
-	echo $(ZIPCMD_CDPACK) > $(ZIPWRAPPER)
-	echo $(ZIPCMD_ZIP) >> $(ZIPWRAPPER)
-	echo $(ZIPCMD_CDBASE) >> $(ZIPWRAPPER)
-endif
-ifdef inUnix
-	/bin/sh $(ZIPWRAPPER)
-else
-	$(ZIPWRAPPER)
-endif
-	$(DEL) $(ZIPWRAPPER)
-else
-	$(ZIPCMD_CDPACK) ; $(ZIPCMD_ZIP) ; $(ZIPCMD_CDBASE)
-endif
-	$(DELTREE) $(PACKDIR)
-fpc_zipsourceinstall:
-	$(MAKE) fpc_zipinstall ZIPTARGET=sourceinstall ZIPSUFFIX=src
-fpc_zipexampleinstall:
-ifdef HASEXAMPLES
-	$(MAKE) fpc_zipinstall ZIPTARGET=exampleinstall ZIPSUFFIX=exm
-endif
-fpc_zipdistinstall:
-	$(MAKE) fpc_zipinstall ZIPTARGET=distinstall
-.PHONY: fpc_clean fpc_cleanall fpc_distclean
-ifdef EXEFILES
-override CLEANEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(CLEANEXEFILES))
-endif
-ifdef CLEAN_UNITS
-override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
-endif
-ifdef CLEANPPUFILES
-override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
-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)
-fpc_distclean: clean
-ifdef COMPILER_UNITTARGETDIR
-TARGETDIRCLEAN=fpc_clean
-endif
-fpc_cleanall: $(CLEANTARGET) $(TARGETDIRCLEAN)
-ifdef CLEANEXEFILES
-	-$(DEL) $(CLEANEXEFILES)
-endif
-	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
-	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
-ifdef AOUTEXT
-	-$(DEL) *$(AOUTEXT)
-endif
-.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 Target.. $(FULL_SOURCE)
-	@$(ECHO)  Full Source.. $(FULL_TARGET)
-	@$(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)  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)  ZipPrefix............ $(ZIPPREFIX)
-	@$(ECHO)  ZipSuffix............ $(ZIPSUFFIX)
-	@$(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
-examples: fpc_examples
-shared:
-install: fpc_install
-sourceinstall: fpc_sourceinstall
-exampleinstall: fpc_exampleinstall
-distinstall: fpc_distinstall
-zipinstall: fpc_zipinstall
-zipsourceinstall: fpc_zipsourceinstall
-zipexampleinstall: fpc_zipexampleinstall
-zipdistinstall: fpc_zipdistinstall
-distclean: fpc_distclean
-cleanall: fpc_cleanall
-info: fpc_info
-makefiles: fpc_makefiles
-.PHONY: all debug smart release examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall distclean cleanall info makefiles
-ifneq ($(wildcard fpcmake.loc),)
-include fpcmake.loc
-endif
-ifdef inUnix
-CURRDIR=./
-else
-CURRDIR=
-endif
-GDBLIBDIR+=libgdb/$(OS_TARGET)
-ifeq ($(OS_TARGET),go32v2)
-ifneq ($(DJDIR),)
-GDBLIBDIR+=$(DJDIR)/lib
-endif
-endif
-override LIBGDB:=$(firstword $(wildcard $(addsuffix /libgdb.a,$(GDBLIBDIR))))
-ifeq ($(LIBGDB),)
-GDBFOUND=0
-else
-GDBFOUND=1
-endif
-ifeq ($(GDBFOUND),1)
-$(CURRDIR)getver$(EXEEXT) : gdbver.pp
-	$(COMPILER) -o$(CURRDIR)getver$(EXEEXT) gdbver.pp
-ifndef GOTGDBVER
-gdbint$(PPUEXT): $(CURRDIR)gdbver$(EXEEXT)
-	$(MAKE) gdbint$(PPUEXT) GOTGDBVER=1
-else
-GDBVER:=GDB_V$(strip $(shell $(CURRDIR)gdbver$(EXEEXT) -n))
-gdbint$(PPUEXT): gdbint.pp
-	@$(ECHO) Using GDB $(GDBVER)
-	$(COMPILER) -d$(GDBVER) gdbint.pp
-	$(DEL) gdbver$(EXEEXT) gdbver$(OEXT)
-endif
-else
-GDBVER=GDB_V5
-gdbint$(PPUEXT): gdbint.pp
-	@$(ECHO) libgdb.a not found, using default GDB $(GDBVER)
-	$(COMPILER) -d$(GDBVER) gdbint.pp
-endif
-gdbcon$(PPUEXT): gdbcon.pp gdbint$(PPUEXT)
-ifeq ($(OS_TARGET),go32v2)
-DBGCOM=dbgcom$(OEXT)
-else
-DBGCOM=
-endif
-ifdef $(COMPILEDBGCOM)
-$(DBGCOM): ../v4.16/dbgcom.c
-	gcc -c -DFPC -Dother_sel -gstabs -o dbgcom.o -I../v4.16 ../v4.16/dbgcom.c
-else
-$(DBGCOM):
-endif
-simple: $(DBGCOM)
-	-rm gdbint.ppu
-	ppc386 -dUSE_LIBGDB gdbint
-	ppc386 testgdb
-testgdb$(EXEEXT): testgdb.pp gdbint$(PPUEXT) gdbcon$(PPUEXT) $(DBGCOM)
-.PHONY: test
-test: examples
-clean: fpc_clean
-	$(DEL) gdbver$(EXEEXT) gdbver$(OEXT)

+ 0 - 109
packages/gdbint/Makefile.fpc

@@ -1,109 +0,0 @@
-#
-#   Makefile.fpc for Free Pascal GDB Interface
-#
-
-[package]
-name=gdbint
-version=1.0.5
-
-[target]
-units=gdbint gdbcon
-examples=testgdb symify
-
-[compiler]
-objectdir=libgdb/$(OS_TARGET)
-librarydir=libgdb/$(OS_TARGET)
-
-[require]
-libc=y
-
-[install]
-fpcpackage=y
-
-[default]
-fpcdir=../..
-
-
-[rules]
-# For unix be sure to use the locally created gdbver
-ifdef inUnix
-CURRDIR=./
-else
-CURRDIR=
-endif
-
-GDBLIBDIR+=libgdb/$(OS_TARGET)
-ifeq ($(OS_TARGET),go32v2)
-ifneq ($(DJDIR),)
-GDBLIBDIR+=$(DJDIR)/lib
-endif
-endif
-# Detect if libgdb.a is available
-override LIBGDB:=$(firstword $(wildcard $(addsuffix /libgdb.a,$(GDBLIBDIR))))
-ifeq ($(LIBGDB),)
-GDBFOUND=0
-else
-GDBFOUND=1
-endif
-
-ifeq ($(GDBFOUND),1)
-# libgdb.a found
-
-$(CURRDIR)getver$(EXEEXT) : gdbver.pp
-        $(COMPILER) -o$(CURRDIR)getver$(EXEEXT) gdbver.pp
-
-ifndef GOTGDBVER
-# gdbver doesn't exists, build it first
-gdbint$(PPUEXT): $(CURRDIR)gdbver$(EXEEXT)
-        $(MAKE) gdbint$(PPUEXT) GOTGDBVER=1
-else
-# gdbver exists
-GDBVER:=GDB_V$(strip $(shell $(CURRDIR)gdbver$(EXEEXT) -n))
-gdbint$(PPUEXT): gdbint.pp
-        @$(ECHO) Using GDB $(GDBVER)
-        $(COMPILER) -d$(GDBVER) gdbint.pp
-        $(DEL) gdbver$(EXEEXT) gdbver$(OEXT)
-endif
-
-else
-# libgdb.a not found, default to libgdb v5
-GDBVER=GDB_V5
-gdbint$(PPUEXT): gdbint.pp
-        @$(ECHO) libgdb.a not found, using default GDB $(GDBVER)
-        $(COMPILER) -d$(GDBVER) gdbint.pp
-endif
-
-gdbcon$(PPUEXT): gdbcon.pp gdbint$(PPUEXT)
-
-ifeq ($(OS_TARGET),go32v2)
-DBGCOM=dbgcom$(OEXT)
-else
-DBGCOM=
-endif
-
-ifdef $(COMPILEDBGCOM)
-# FPC conditionnal remove the file watching mecanism introduced
-# in v2.02 of dbgcom.c because it relies
-# on the fact that all files are opened via C lib calls
-# which is wrong for FPC !!
-$(DBGCOM): ../v4.16/dbgcom.c
-        gcc -c -DFPC -Dother_sel -gstabs -o dbgcom.o -I../v4.16 ../v4.16/dbgcom.c
-else
-$(DBGCOM):
-endif
-
-simple: $(DBGCOM)
-        -rm gdbint.ppu
-        ppc386 -dUSE_LIBGDB gdbint
-        ppc386 testgdb
-
-testgdb$(EXEEXT): testgdb.pp gdbint$(PPUEXT) gdbcon$(PPUEXT) $(DBGCOM)
-
-# Allow test for example
-.PHONY: test
-
-test: examples
-
-clean: fpc_clean
-        $(DEL) gdbver$(EXEEXT) gdbver$(OEXT)
-

+ 0 - 267
packages/gdbint/gdbcon.pp

@@ -1,267 +0,0 @@
-{
-    $Id$
-    Copyright (c) 1998 by Peter Vreman
-
-    Lowlevel GDB interface which communicates directly with libgdb
-
-    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 GDBCon;
-interface
-
-uses
-  GDBInt;
-
-type
-  PGDBController=^TGDBController;
-  TGDBController=object(TGDBInterface)
-    progname   : pchar;
-    progargs   : pchar;
-    in_command,
-    init_count : longint;
-    constructor Init;
-    destructor  Done;
-    procedure CommandBegin(const s:string);virtual;
-    procedure Command(const s:string);
-    procedure CommandEnd(const s:string);virtual;
-    procedure Reset;virtual;
-    { tracing }
-    procedure StartTrace;
-    procedure Run;virtual;
-    procedure TraceStep;virtual;
-    procedure TraceNext;virtual;
-    procedure TraceStepI;virtual;
-    procedure TraceNextI;virtual;
-    procedure Continue;virtual;
-    { needed for dos because newlines are only #10 (PM) }
-    procedure WriteErrorBuf;
-    procedure WriteOutputBuf;
-    function  GetOutput : Pchar;
-    function  GetError : Pchar;
-    function  LoadFile(var fn:string):boolean;
-    procedure SetArgs(const s : string);
-    procedure ClearSymbols;
-  end;
-
-procedure UnixDir(var s : string);
-
-implementation
-
-uses
-  strings;
-
-procedure UnixDir(var s : string);
-var i : longint;
-begin
-  for i:=1 to length(s) do
-    if s[i]='\' then s[i]:='/';
-end;
-
-constructor TGDBController.Init;
-begin
-  inherited init;
-end;
-
-
-destructor TGDBController.Done;
-begin
-  if assigned(progname) then
-    strdispose(progname);
-  if assigned(progargs) then
-    strdispose(progargs);
-  inherited done;
-end;
-
-
-procedure TGDBController.Command(const s:string);
-begin
-  CommandBegin(s);
-  gdboutputbuf.reset;
-  gdberrorbuf.reset;
-  inc(in_command);
-  gdb_command(s);
-  dec(in_command);
-  {
-    What is that for ?? PM
-    I had to comment it because
-    it resets the debuggere after each command !!
-    Maybe it can happen on errors ??
-  if in_command<0 then
-   begin
-     in_command:=0;
-     inc(in_command);
-     Reset;
-     dec(in_command);
-   end; }
-  CommandEnd(s);
-end;
-
-procedure TGDBController.CommandBegin(const s:string);
-begin
-end;
-
-procedure TGDBController.CommandEnd(const s:string);
-begin
-end;
-
-function TGDBController.LoadFile(var fn:string):boolean;
-var
-  cmd : string;
-begin
-  getdir(0,cmd);
-  UnixDir(cmd);
-  cmd:='cd '+cmd;
-  Command(cmd);
-  GDB__Init;
-  UnixDir(fn);
-  if assigned(progname) then
-    strdispose(progname);
-  getmem(progname,length(fn)+1);
-  strpcopy(progname,fn);
-  if fn<>'' then
-    Command('file '+fn);
-  LoadFile:=true;
-end;
-
-procedure TGDBController.SetArgs(const s : string);
-begin
-  if assigned(progargs) then
-    strdispose(progargs);
-  getmem(progargs,length(s)+1);
-  strpcopy(progargs,s);
-  command('set args '+s);
-end;
-
-procedure TGDBController.Reset;
-begin
-  call_reset:=false;
-{ DeleteBreakPoints(); }
-  if debuggee_started then
-   begin
-     reset_command:=true;
-     BreakSession;
-     Command('kill');
-     reset_command:=false;
-     debuggee_started:=false;
-   end;
-end;
-
-procedure TGDBController.StartTrace;
-begin
-  Command('tbreak PASCALMAIN');
-  Run;
-end;
-
-procedure TGDBController.Run;
-begin
-  Command('run');
-  inc(init_count);
-end;
-
-
-procedure TGDBController.TraceStep;
-begin
-  Command('step');
-end;
-
-
-procedure TGDBController.TraceNext;
-begin
-  Command('next');
-end;
-
-
-procedure TGDBController.TraceStepI;
-begin
-  Command('stepi');
-end;
-
-
-procedure TGDBController.TraceNextI;
-begin
-  Command('nexti');
-end;
-
-
-procedure TGDBController.Continue;
-begin
-  Command('continue');
-end;
-
-
-procedure TGDBController.ClearSymbols;
-begin
-  if debuggee_started then
-   Reset;
-  if init_count>0 then
-   Command('file');
-end;
-
-
-procedure BufWrite(Buf : pchar);
-  var p,pe : pchar;
-begin
-  p:=buf;
-  While assigned(p) do
-    begin
-       pe:=strscan(p,#10);
-       if pe<>nil then
-         pe^:=#0;
-       Writeln(p);
-       { restore for dispose }
-       if pe<>nil then
-         pe^:=#10;
-       if pe=nil then
-         p:=nil
-       else
-         begin
-           p:=pe;
-           inc(p);
-         end;
-    end;
-end;
-
-
-function  TGDBController.GetOutput : Pchar;
-begin
-  GetOutput:=gdboutputbuf.buf;
-end;
-
-function  TGDBController.GetError : Pchar;
-var p : pchar;
-begin
-  p:=gdberrorbuf.buf;
-  if (p^=#0) and got_error then
-    GetError:=pchar(longint(gdboutputbuf.buf)+gdboutputbuf.idx)
-  else
-    GetError:=p;
-end;
-
-procedure TGDBController.WriteErrorBuf;
-begin
-   BufWrite(gdberrorbuf.buf);
-end;
-
-
-procedure TGDBController.WriteOutputBuf;
-begin
-   BufWrite(gdboutputbuf.buf);
-end;
-
-
-end.
-{
-  $Log$
-  Revision 1.3  2001-04-08 11:43:39  peter
-    * merged changes from fixes branch
-
-  Revision 1.2  2000/07/13 11:33:15  michael
-  + removed logs
-
-}

+ 0 - 2558
packages/gdbint/gdbint.pp

@@ -1,2558 +0,0 @@
-{
-    $Id$
-    Copyright (c) 1998 by Peter Vreman
-
-    Lowlevel GDB interface which communicates directly with libgdb
-
-    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 GdbInt;
-interface
-
-{$smartlink off}
-
-{ this is not needed (PM) $output_format as}
-
-{.$define Verbose}
-{.$define DebugCommand}
-{$define NotImplemented}
-
-
-{ Default version for GDB 5 is 5.01 for now PM }
-
-{$ifdef GDB_V5}
-  {$ifndef GDB_V500}
-    {$define GDB_V501}
-  {$endif ndef GDB_V500}
-{$endif def GDB_V5}
-
-{$ifdef GDB_V502}
-  {$define GDB_V501}
-  {$define GDB_USES_PTID}
-  {$define GDB_V5}
-{$endif GDB_V502}
-
-{$ifdef GDB_V501}
-  {$define GDB_USES_PTID}
-  {$define GDB_V5}
-{$endif GDB_V501}
-
-{$ifdef GDB_V500}
-  {$define GDB_V5}
-{$endif GDB_V500}
-
-{ V4.18 is default for now }
-{ set when starting v5 support PM }
-{$ifndef GDB_V5}
-  {$ifndef GDB_V416}
-    {$define GDB_V418}
-  {$endif GDB_V416}
-{$endif GDB_V5}
-
-{$ifdef go32v2}
-  {$undef NotImplemented}
-  { ifdef GDB_V418 changed to ifndef GDB_V416}
-  {$ifdef USE_GDB_OBJS}
-    {$include gdbobjs.inc}
-  {$else USE_GDB_OBJS}
-    {$LINKLIB gdb}
-    {$ifdef GDB_V5}
-      {$LINKLIB bfd}
-      {$LINKLIB readline}
-      {$LINKLIB opcodes}
-      {$LINKLIB history}
-      {$LINKLIB iberty}
-      {$LINKLIB intl}
-    {$endif GDB_V5}
-  {$endif ndef USE_GDB_OBJS}
-  {$LINKLIB dbg}
-  {$LINKLIB c}
-{$endif go32v2}
-
-{$ifndef bsd}
-{$ifdef linux}
-  {$undef NotImplemented}
- {$ifndef GDB_V5}
-  {$LINKLIB ncurses}
- {$endif not GDB_V5}
-  {$LINKLIB gdb}
-    {$ifdef GDB_V5}
-      {$LINKLIB bfd}
-      {$LINKLIB readline}
-      {$LINKLIB opcodes}
-      {$LINKLIB history}
-      {$LINKLIB iberty}
-      {$LINKLIB ncurses}
-      {$LINKLIB m}
-      {$LINKLIB iberty}
-      {$LINKLIB dl}
-    {$endif GDB_V5}
-  {$LINKLIB c}
-  {$LINKLIB gcc}
-{$endif linux}
-{$endif bsd}
-
-{$ifdef freebsd}
-  {$undef NotImplemented}
- {$ifndef GDB_V5}
-  {$LINKLIB ncurses}
- {$endif not GDB_V5}
-  {$LINKLIB gdb}
-    {$ifdef GDB_V5}
-      {$LINKLIB bfd}
-      {$LINKLIB readline}
-      {$LINKLIB opcodes}
-      {$LINKLIB history}
-      {$LINKLIB iberty}
-      {$LINKLIB ncurses}
-      {$LINKLIB m}
-      {$LINKLIB iberty}
-      {$LINKLIB dl}
-    {$endif GDB_V5}
-  {$LINKLIB c}
-  {$LINKLIB gcc}
-{$endif freebsd}
-
-{$ifdef netbsd}
-  {$undef NotImplemented}
- {$ifndef GDB_V5}
-  {$LINKLIB ncurses}
- {$endif not GDB_V5}
-  {$LINKLIB gdb}
-    {$ifdef GDB_V5}
-      {$LINKLIB bfd}
-      {$LINKLIB readline}
-      {$LINKLIB opcodes}
-      {$LINKLIB history}
-      {$LINKLIB iberty}
-      {$LINKLIB ncurses}
-      {$LINKLIB m}
-      {$LINKLIB iberty}
-      {$LINKLIB intl}
-      { does not seem to exist on netbsd LINKLIB dl}
-    {$endif GDB_V5}
-  {$LINKLIB c}
-  {$LINKLIB gcc}
-{$endif netbsd}
-
-{$ifdef win32}
-  {$undef NotImplemented}
-{$ifndef GDB_V5}
-  {$LINKLIB cygwin}
-  {$LINKLIB gdb}
-  {$ifdef USE_TERMCAP}
-    {$LINKLIB termcap}
-  {$else not USE_TERMCAP}
-    {$LINKLIB ncurses}
-  {$endif not USE_TERMCAP}
-  {$LINKLIB gcc}
-  {$LINKLIB c}
-  {$LINKLIB cygwin}
-  { all those are maybe not necessary
-    but at least user32 is required
-    because of clipboard handling PM }
-  {$LINKLIB kernel32}
-  {$LINKLIB user32}
-{$else GDB_V5}
-  {$LINKLIB gdb}
-  {$LINKLIB bfd}
-  {$LINKLIB readline}
-  {$LINKLIB opcodes}
-  {$LINKLIB intl}
-  {$LINKLIB iberty}
-  {$LINKLIB termcap}
-  {$LINKLIB gcc}
-  {$LINKLIB cygwin} { alias of libm.a and libc.a }
-  {$LINKLIB iberty}
-  {$LINKLIB imagehlp}
-  {$LINKLIB kernel32}
-  {$LINKLIB user32}
-{$endif GDB_V5}
-
-{$endif win32}
-
-{$ifdef go32v2}
-  {$define supportexceptions}
-{$endif go32v2}
-{$ifdef linux}
-  {$define supportexceptions}
-{$endif linux}
-{$ifdef freebsd}
-   {$define supportexceptions}
-{$endif}
-
-{$ifdef NotImplemented}
-  {$fatal This OS is not yet supported !!!}
-{$endif NotImplemented}
-
-{$packrecords C}
-
-type
-  psyminfo=^tsyminfo;
-  tsyminfo=record
-    address  : longint;
-    fname    : pchar;
-    line     : longint;
-    funcname : pchar;
-    offset   : longint;
-  end;
-
-  tframeentry = object
-    file_name : pchar;
-    function_name : pchar;
-    args : pchar;
-    line_number : longint;
-    address : longint;
-    level : longint;
-    constructor init;
-    destructor done;
-    procedure reset;
-    procedure clear;
-  end;
-  pframeentry=^tframeentry;
-  ppframeentry=^pframeentry;
-
-{$ifndef GDB_V416}
-{ needed for handles }
-{not anymore I textrec.inc}
-
-
-type
-  CORE_ADDR = cardinal; { might be target dependent PM }
-  streamtype = (afile,astring);
-  C_FILE     = longint; { at least under DJGPP }
-  P_C_FILE   = ^C_FILE;
-
-{$ifdef GDB_V418}
-{ GDB_FILE type }
-type
-  PGDB_FILE = ^TGDB_FILE;
-  TGDB_FILE = record
-              ts_streamtype : streamtype;
-              ts_filestream : P_C_FILE;
-              ts_strbuf : pchar;
-              ts_buflen : longint;
-              end;
-{$endif GDB_V418}
-
-{$ifdef GDB_V5}
-type
-
-  pui_file = ^ui_file;
-
-  ui_file_flush_ftype = procedure(stream : pui_file);cdecl;
-  ui_file_write_ftype = procedure(stream : pui_file;buf : pchar;len : longint);cdecl;
-  ui_file_fputs_ftype = procedure(buf : pchar; stream : pui_file);cdecl;
-  ui_file_delete_ftype = procedure(stream : pui_file);cdecl;
-  ui_file_isatty_ftype = function(stream : pui_file) : longbool;cdecl;
-  ui_file_rewind_ftype = procedure(stream : pui_file);cdecl;
-  ui_file_put_method_ftype = procedure(var _object; buffer : pchar;length_buffer : longint);cdecl;
-  ui_file_put_ftype = procedure(stream : pui_file;method : ui_file_put_method_ftype;var context);cdecl;
-
-  plongint = ^longint;
-
-  ui_file = record
-      magic : plongint;
-      to_flush  : ui_file_flush_ftype;
-      to_write  : ui_file_write_ftype;
-      to_fputs  : ui_file_fputs_ftype;
-      to_delete : ui_file_delete_ftype;
-      to_isatty : ui_file_isatty_ftype;
-      to_rewind : ui_file_rewind_ftype;
-      to_put    : ui_file_put_ftype;
-      to_data   : pointer;
-    end;
-
-  { used to delete stdio_ui_file  gdb_stdout and gdb_stderr }
-  procedure ui_file_delete(stream : pui_file);cdecl;external;
-
-  { used to recreate gdb_stdout and gdb_stderr as memory streams }
-  function mem_fileopen : pui_file;cdecl;external;
-
-  { used to change the write procvar to ours }
-
-  procedure set_ui_file_write(stream : pui_file;write : ui_file_write_ftype);cdecl;external;
-
-
-{$endif GDB_V5}
-
-{$ifdef GDB_USES_PTID}
-  type
-
-  (* struct ptid
-  {
-    /* Process id */
-    int pid;
-
-    /* Lightweight process id */
-    long lwp;
-
-    /* Thread id */
-    long tid;
-  }; *)
-   pinferior_ptid = ^tinferior_ptid;
-   tinferior_ptid = record
-      pid : longint{C int};
-      lwp : longint{ C long};
-      tid : longint{ C long};
-     end;
-{$endif}
-
-{$ifdef win32}
-
-type
-  { from sys/reent.h
-    real structure is bigger but only std.. are wanted here PM }
-  REENT = record
-    err : longint;
-    stdin,stdout,stderr : P_C_FILE;
-  end;
-  PREENT = ^REENT;
-
-var _impure_ptr : PREENT;cvar;external;
-
-{$endif win32}
-
-{$endif not GDB_V416}
-
-type
-  tgdbbuffer=object
-    buf   : pchar;
-    size,
-    idx   : longint;
-{$ifdef GDB_V418}
-    link  : pgdb_file;
-{$endif not GDB_V418}
-{$ifdef GDB_V5}
-    gdb_file  : pui_file;
-{$endif not GDB_V5}
-    constructor Init;
-    destructor  Done;
-    procedure Reset;
-    procedure Resize(nsize : longint);
-    procedure Append(p:pchar);
-    procedure lappend(p:pchar;len : longint);
-  end;
-
-  pgdbinterface=^tgdbinterface;
-  tgdbinterface=object
-    gdberrorbuf,
-    gdboutputbuf  : tgdbbuffer;
-    got_error,
-    reset_command,
-    call_reset,
-    Debuggee_started : boolean;
-    { frames and frame info while recording a frame }
-    frames        : ppframeentry;
-    frame_size,
-    frame_count   : longint;
-    record_frames,
-    frame_begin_seen : boolean;
-    frame_level,
-    command_level,
-    stop_breakpoint_number,
-    current_address,
-    current_line_number,
-    signal_start,
-    signal_end,
-    error_start,
-    error_end,
-    function_start,
-    function_end,
-    args_start,
-    args_end,
-    file_start,
-    file_end,
-    line_start,
-    line_end : longint;
-    current_pc      : CORE_ADDR;
-    { breakpoint }
-    last_breakpoint_number,
-    last_breakpoint_address,
-    last_breakpoint_line : longint;
-    last_breakpoint_file : pchar;
-    invalid_breakpoint_line : boolean;
-    { init }
-    constructor init;
-    destructor  done;
-    { Lowlevel }
-    function  error:boolean;
-    function  error_num:longint;
-    procedure gdb_command(const s:string);
-    procedure gdb__init;
-    procedure gdb_done;
-    procedure resize_frames;
-    function  add_frameentry:pframeentry;
-    function  get_frameentry(level : longint):pframeentry;
-    function  get_current_frame : longint;
-    function  set_current_frame(level : longint) : boolean;
-    procedure clear_frames;
-    { Highlevel }
-    user_screen_shown,
-    switch_to_user     : boolean;
-    procedure GetAddrSyminfo(addr:longint;var si:tsyminfo);
-    procedure SelectSourceline(fn:pchar;line:longint);
-    procedure StartSession;
-    procedure BreakSession;
-    procedure EndSession(code:longint);
-    procedure DebuggerScreen;
-    procedure UserScreen;
-    { Hooks }
-    procedure DoSelectSourceline(const fn:string;line:longint);virtual;
-    procedure DoStartSession;virtual;
-    procedure DoBreakSession;virtual;
-    procedure DoEndSession(code:longint);virtual;
-    procedure DoDebuggerScreen;virtual;
-    procedure DoUserScreen;virtual;
-    function  AllowQuit : boolean;virtual;
-  end;
-
-
-function  GDBVersion : string;
-
-var
-  curr_gdb : pgdbinterface;
-
-const
-  use_gdb_file : boolean = false;
-var
-  gdb_file : text;
-{$ifdef GDB_USES_PTID}
-  inferior_ptid : tinferior_ptid;cvar;external;
-{$else}
-  inferior_pid : longint;cvar;external;
-{$endif}
-
-{$ifdef go32v2}
-  { needed to be sure %fs contains the DOS memory selector
-    used in Mem[] code PM }
-  procedure reload_fs;
-{$endif go32v2}
-
-{$ifdef GDB_USES_PTID}
-function inferior_pid : longint;
-{$endif}
-
-implementation
-
-uses
-{$ifdef win32}
-  initc,
-{$endif win32}
-{$ifdef linux}
- {$ifndef freebsd}
-  {$ifdef ver1_0}
-    linux,
-  {$else}
-    unix,
-  {$endif}
- {$endif}
-{$endif}
-{$ifdef freebsd}
-  {$ifdef ver1_0}
-    linux,
-  {$else}
-    unix,
-  {$endif}
-{$endif}
-{$ifdef go32v2}
-  go32,
-  dpmiexcp,
-  initc,
-{$endif}
-  strings;
-
-{*****************************************************************************
-                          Types used by libgdb.a
-*****************************************************************************}
-
-{$ifdef go32v2}
-type
-  jmp_buf = dpmi_jmp_buf;
-  pjmp_buf = pdpmi_jmp_buf;
-
-  function setjmp(var rec : jmp_buf) : longint;cdecl;external;
-
-  procedure longjmp(var rec : jmp_buf;return_value : longint);cdecl;external;
-
-  procedure reload_fs;assembler;
-  asm
-     movw  dosmemselector,%ax
-     movw  %ax,%fs
-  end['EAX'];
-
-{$endif}
-{$ifdef win32}
-type
-  jmp_buf = record
-  case byte of
-    0 :
-    { greatest value found in cygwin machine/setjmp.h for i386 }
-    (unknown_field : array [1..13] of longint;);
-    1 :
-    (eax,ebx,ecx,edx : longint;
-    esi,edi,ebp,esp,eip : longint;);
-  end;
-
-  pjmp_buf = ^jmp_buf;
-
-  function setjmp(var rec : jmp_buf) : longint;cdecl;external;
-
-  procedure longjmp(var rec : jmp_buf;return_value : longint);cdecl;external;
-
-{$ifndef supportexceptions}
-type
-  { I don't think FPC would accept that
-    the funcvar return type is the funcvar type itself ! PM }
-  SignalHandler   = Procedure(Sig : LongInt);cdecl;
-  function signal(sig : longint;new_signal : SignalHandler) : SignalHandler;cdecl;external;
-
-{define supportexceptions not yet working }
-{$endif now exceptions are supported for win32}
-{$endif win32}
-
-  type
-     pCORE_ADDR = ^CORE_ADDR;
-     pblock = ^block;
-
-     tlanguage = (language_unknown,language_auto,language_c,
-       language_cplus,language_java,language_chill,
-       language_fortran,language_m2,language_asm,
-       language_scm,language_pascal,language_objc);
-
-     bptype = (bp_breakpoint,bp_hardware_breakpoint,
-       bp_until,bp_finish,bp_watchpoint,bp_hardware_watchpoint,
-       bp_read_watchpoint,bp_access_watchpoint,
-       bp_longjmp,bp_longjmp_resume,bp_step_resume,
-       bp_through_sigtramp,bp_watchpoint_scope,
-       bp_call_dummy,bp_shlib_event);
-
-     tenable = (disabled,enabled,shlib_disabled);
-
-     bpdisp = (del,del_at_next_stop,disable,donttouch);
-
-{$PACKRECORDS 4}
-     pbreakpoint = ^breakpoint;
-     breakpoint = record
-          next : pbreakpoint;
-          typ : bptype;
-          enable : tenable;
-          disposition : bpdisp;
-          number : longint;
-          address : CORE_ADDR;
-          line_number : longint;
-          source_file : pchar;
-          silent : byte;
-          ignore_count : longint;
-          shadow_contents : array[0..15] of char;
-          inserted : char;
-          duplicate : char;
-          commands : pointer; {^command_line}
-          frame : CORE_ADDR;
-          cond : pointer; {^expression}
-          addr_string : ^char;
-          language : tlanguage;
-          input_radix : longint;
-          cond_string : ^char;
-          exp_string : ^char;
-          exp : pointer; {^expression}
-          exp_valid_block : pblock; {^block;}
-          val : pointer; {value_ptr;}
-          val_chain : pointer; {value_ptr;}
-          related_breakpoint : pbreakpoint;
-          watchpoint_frame : CORE_ADDR;
-          thread : longint;
-          hit_count : longint;
-          section : pointer; {^asection}
-       end;
-
-     tfreecode=(free_nothing,free_contents,free_linetable);
-
-     psymtab = ^symtab;
-     symtab = record
-          next : psymtab;
-          blockvector : pointer; {^blockvector;}
-          linetable : pointer; {^linetable;}
-          block_line_section : longint;
-          primary : longint;
-          filename : pchar;
-          dirname : pchar;
-          free_code : tfreecode;
-          free_ptr : pchar;
-          nlines : longint;
-          line_charpos : ^longint;
-          language : tlanguage;
-          Debugformat : pchar;
-          version : pchar;
-          fullname : pchar;
-          objfile : pointer; {^objfile;}
-       end;
-
-     psymtab_and_line = ^symtab_and_line;
-     symtab_and_line = record
-          symtab : psymtab;
-{$ifndef GDB_V416}
-          { v4.16 does not have the section field !! }
-          section : pointer; {^asection;}
-{$endif GDB_V416}
-          line : longint;
-          pc : CORE_ADDR;
-          _end : CORE_ADDR;
-       end;
-
-     symtabs_and_lines = record
-          sals : ^symtab_and_line;
-          nelts : longint;
-       end;
-
-    psymbol = ^symbol;
-    pminimal_symbol = ^minimal_symbol;
-
-    general_symbol_info = record
-  (* Name of the symbol.  This is a required field.  Storage for the name is
-     allocated on the psymbol_obstack or symbol_obstack for the associated
-     objfile. *)
-
-      _name : pchar;
-
-  (* Value of the symbol.  Which member of this union to use, and what
-     it means, depends on what kind of symbol this is and its
-     SYMBOL_CLASS.  See comments there for more details.  All of these
-     are in host byte order (though what they point to might be in
-     target byte order, e.g. LOC_CONST_BYTES).  *)
-     value : record
-       case integer of
-      (* The fact that this is a long not a LONGEST mainly limits the
-         range of a LOC_CONST.  Since LOC_CONST_BYTES exists, I'm not
-         sure that is a big deal.  *)
-       0 : (ivalue : longint;);
-
-       1 : (block  : pblock;);
-
-       2 : (bytes  : pchar;);
-
-       3 : (address : CORE_ADDR;);
-
-      (* for opaque typedef struct chain *)
-
-       4 : (chain : psymbol;);
-      end;
-
-  (* Since one and only one language can apply, wrap the language specific
-     information inside a union. *)
-
-   (* union
-    {
-      struct cplus_specific      /* For C++ */
-                                /*  and Java */
-        {
-          char *demangled_name;
-        } cplus_specific;
-      struct chill_specific      /* For Chill */
-        {
-          char *demangled_name;
-        } chill_specific;
-    } language_specific; *)
-     demangled_name : pchar;
-
-  (* Record the source code language that applies to this symbol.
-     This is used to select one of the fields from the language specific
-     union above. *)
-
-    language : tlanguage;
-
-  (* Which section is this symbol in?  This is an index into
-     section_offsets for this objfile.  Negative means that the symbol
-     does not get relocated relative to a section.
-     Disclaimer: currently this is just used for xcoff, so don't
-     expect all symbol-reading code to set it correctly (the ELF code
-     also tries to set it correctly).  *)
-
-    section : word;
-
-  (* The bfd section associated with this symbol. *)
-
-    bfd_section : pointer {^asection};
-  end; { of general_symbol_info record declaration }
-
-  tminimal_symbol_type =
-    (
-      mst_unknown := 0,         (* Unknown type, the default *)
-      mst_text,                 (* Generally executable instructions *)
-      mst_data,                 (* Generally initialized data *)
-      mst_bss,                  (* Generally uninitialized data *)
-      mst_abs,                  (* Generally absolute (nonrelocatable) *)
-      (* GDB uses mst_solib_trampoline for the start address of a shared
-         library trampoline entry.  Breakpoints for shared library functions
-         are put there if the shared library is not yet loaded.
-         After the shared library is loaded, lookup_minimal_symbol will
-         prefer the minimal symbol from the shared library (usually
-         a mst_text symbol) over the mst_solib_trampoline symbol, and the
-         breakpoints will be moved to their true address in the shared
-         library via breakpoint_re_set.  *)
-      mst_solib_trampoline,     (* Shared library trampoline code *)
-      (* For the mst_file* types, the names are only guaranteed to be unique
-         within a given .o file.  *)
-      mst_file_text,            (* Static version of mst_text *)
-      mst_file_data,            (* Static version of mst_data *)
-      mst_file_bss              (* Static version of mst_bss *)
-    );
-
-  namespace_enum = (
-  (* UNDEF_NAMESPACE is used when a namespace has not been discovered or
-     none of the following apply.  This usually indicates an error either
-     in the symbol information or in gdb's handling of symbols. *)
-  UNDEF_NAMESPACE,
-
-  (* VAR_NAMESPACE is the usual namespace.  In C, this contains variables,
-     function names, typedef names and enum type values. *)
-  VAR_NAMESPACE,
-
-  (* STRUCT_NAMESPACE is used in C to hold struct, union and enum type names.
-     Thus, if `struct foo' is used in a C program, it produces a symbol named
-     `foo' in the STRUCT_NAMESPACE. *)
-  STRUCT_NAMESPACE,
-
-  (* LABEL_NAMESPACE may be used for names of labels (for gotos);
-     currently it is not used and labels are not recorded at all.  *)
-  LABEL_NAMESPACE,
-
-  (* Searching namespaces. These overlap with VAR_NAMESPACE, providing
-     some granularity with the search_symbols function. *)
-  (* Everything in VAR_NAMESPACE minus FUNCTIONS_-, TYPES_-, and
-     METHODS_NAMESPACE *)
-  VARIABLES_NAMESPACE,
-
-  (* All functions -- for some reason not methods, though. *)
-  FUNCTIONS_NAMESPACE,
-
-  (* All defined types *)
-  TYPES_NAMESPACE,
-
-  (* All class methods -- why is this separated out? *)
-  METHODS_NAMESPACE
-
-  );
-  address_class = (
-  (* Not used; catches errors *)
-  LOC_UNDEF,
-
-  (* Value is constant int SYMBOL_VALUE, host byteorder *)
-  LOC_CONST,
-
-  (* Value is at fixed address SYMBOL_VALUE_ADDRESS *)
-  LOC_STATIC,
-
-  (* Value is in register.  SYMBOL_VALUE is the register number.  *)
-  LOC_REGISTER,
-
-  (* It's an argument; the value is at SYMBOL_VALUE offset in arglist.  *)
-  LOC_ARG,
-
-  (* Value address is at SYMBOL_VALUE offset in arglist.  *)
-  LOC_REF_ARG,
-
-  (* Value is in register number SYMBOL_VALUE.  Just like LOC_REGISTER
-     except this is an argument.  Probably the cleaner way to handle
-     this would be to separate address_class (which would include
-     separate ARG and LOCAL to deal with FRAME_ARGS_ADDRESS versus
-     FRAME_LOCALS_ADDRESS), and an is_argument flag.
-
-     For some symbol formats (stabs, for some compilers at least),
-     the compiler generates two symbols, an argument and a register.
-     In some cases we combine them to a single LOC_REGPARM in symbol
-     reading, but currently not for all cases (e.g. it's passed on the
-     stack and then loaded into a register).  *)
-  LOC_REGPARM,
-
-  (* Value is in specified register.  Just like LOC_REGPARM except the
-     register holds the address of the argument instead of the argument
-     itself. This is currently used for the passing of structs and unions
-     on sparc and hppa.  It is also used for call by reference where the
-     address is in a register, at least by mipsread.c.  *)
-  LOC_REGPARM_ADDR,
-
-  (* Value is a local variable at SYMBOL_VALUE offset in stack frame.  *)
-  LOC_LOCAL,
-
-  (* Value not used; definition in SYMBOL_TYPE.  Symbols in the namespace
-     STRUCT_NAMESPACE all have this class.  *)
-  LOC_TYPEDEF,
-
-  (* Value is address SYMBOL_VALUE_ADDRESS in the code *)
-  LOC_LABEL,
-
-  (* In a symbol table, value is SYMBOL_BLOCK_VALUE of a `struct block'.
-     In a partial symbol table, SYMBOL_VALUE_ADDRESS is the start address
-     of the block.  Function names have this class. *)
-  LOC_BLOCK,
-
-  (* Value is a constant byte-sequence pointed to by SYMBOL_VALUE_BYTES, in
-     target byte order.  *)
-  LOC_CONST_BYTES,
-
-  (* Value is arg at SYMBOL_VALUE offset in stack frame. Differs from
-     LOC_LOCAL in that symbol is an argument; differs from LOC_ARG in
-     that we find it in the frame (FRAME_LOCALS_ADDRESS), not in the
-     arglist (FRAME_ARGS_ADDRESS).  Added for i960, which passes args
-     in regs then copies to frame.  *)
-  LOC_LOCAL_ARG,
-
-  (* Value is at SYMBOL_VALUE offset from the current value of
-     register number SYMBOL_BASEREG.  This exists mainly for the same
-     things that LOC_LOCAL and LOC_ARG do; but we need to do this
-     instead because on 88k DWARF gives us the offset from the
-     frame/stack pointer, rather than the offset from the "canonical
-     frame address" used by COFF, stabs, etc., and we don't know how
-     to convert between these until we start examining prologues.
-
-     Note that LOC_BASEREG is much less general than a DWARF expression.
-     We don't need the generality (at least not yet), and storing a general
-     DWARF expression would presumably take up more space than the existing
-     scheme.  *)
-  LOC_BASEREG,
-
-  (* Same as LOC_BASEREG but it is an argument.  *)
-  LOC_BASEREG_ARG,
-
-  (* Value is at fixed address, but the address of the variable has
-     to be determined from the minimal symbol table whenever the
-     variable is referenced.
-     This happens if debugging information for a global symbol is
-     emitted and the corresponding minimal symbol is defined
-     in another object file or runtime common storage.
-     The linker might even remove the minimal symbol if the global
-     symbol is never referenced, in which case the symbol remains
-     unresolved.  *)
-  LOC_UNRESOLVED,
-
-  (* Value is at a thread-specific location calculated by a
-     target-specific method. *)
-  LOC_THREAD_LOCAL_STATIC,
-
-  (* The variable does not actually exist in the program.
-     The value is ignored.  *)
-  LOC_OPTIMIZED_OUT,
-
-  (* The variable is static, but actually lives at * (address).
-   * I.e. do an extra indirection to get to it.
-   * This is used on HP-UX to get at globals that are allocated
-   * in shared libraries, where references from images other
-   * than the one where the global was allocated are done
-   * with a level of indirection.
-   *)
-  LOC_INDIRECT
-  );
-
-   minimal_symbol = record
-  (* The general symbol info required for all types of symbols.
-     The SYMBOL_VALUE_ADDRESS contains the address that this symbol
-     corresponds to.  *)
-    ginfo : general_symbol_info;
-
-  (* The info field is available for caching machine-specific information
-     so it doesn't have to rederive the info constantly (over a serial line).
-     It is initialized to zero and stays that way until target-dependent code
-     sets it.  Storage for any data pointed to by this field should be allo-
-     cated on the symbol_obstack for the associated objfile.
-     The type would be "void *" except for reasons of compatibility with older
-     compilers.  This field is optional.
-
-     Currently, the AMD 29000 tdep.c uses it to remember things it has decoded
-     from the instructions in the function header, and the MIPS-16 code uses
-     it to identify 16-bit procedures.  *)
-
-    info : pchar;
-
-{$ifdef SOFUN_ADDRESS_MAYBE_MISSING}
-  (* Which source file is this symbol in?  Only relevant for mst_file_*.  *)
-    filename : pchar;
-{$endif}
-
-  (* Classification types for this symbol.  These should be taken as "advisory
-     only", since if gdb can't easily figure out a classification it simply
-     selects mst_unknown.  It may also have to guess when it can't figure out
-     which is a better match between two types (mst_data versus mst_bss) for
-     example.  Since the minimal symbol info is sometimes derived from the
-     BFD library's view of a file, we need to live with what information bfd
-     supplies. *)
-
-    minimal_symbol_type : tminimal_symbol_type;
-  end{ of minimal_symbol};
-
-  block = record
-  (* Addresses in the executable code that are in this block.  *)
-  startaddr,
-  endaddr : CORE_ADDR ;
-
-  (* The symbol that names this block, if the block is the body of a
-     function; otherwise, zero.  *)
-  _function : psymbol;
-
-  (* The `struct block' for the containing block, or 0 if none.
-     The superblock of a top-level local block (i.e. a function in the
-     case of C) is the STATIC_BLOCK.  The superblock of the
-     STATIC_BLOCK is the GLOBAL_BLOCK.  *)
-
-  superblock : pblock;
-
-  (* Version of GCC used to compile the function corresponding
-     to this block, or 0 if not compiled with GCC.  When possible,
-     GCC should be compatible with the native compiler, or if that
-     is not feasible, the differences should be fixed during symbol
-     reading.  As of 16 Apr 93, this flag is never used to distinguish
-     between gcc2 and the native compiler.
-
-     If there is no function corresponding to this block, this meaning
-     of this flag is undefined.  *)
-
-  gcc_compile_flag : byte;
-
-  (* Number of local symbols.  *)
-  nsyms : longint;
-
-  (* The symbols.  If some of them are arguments, then they must be
-     in the order in which we would like to print them.  *)
-  sym : array [0..0] of psymbol;
-  end { of block definition };
-
-  symbol = record
-  (* The general symbol info required for all types of symbols. *)
-    ginfo : general_symbol_info;
-
-  (* Data type of value *)
-    _type : pointer{ptype};
-
-  (* Name space code.  *)
-  namespace : namespace_enum;
-
-  (* Address class *)
-
-  aclass : address_class;
-
-  (* Line number of definition.  FIXME:  Should we really make the assumption
-     that nobody will try to debug files longer than 64K lines?  What about
-     machine generated programs? *)
-
-  line : word;
-
-  (* Some symbols require an additional value to be recorded on a per-
-     symbol basis.  Stash those values here. *)
-
-  (*union
-    {
-      /* Used by LOC_BASEREG and LOC_BASEREG_ARG.  */
-      short basereg;
-    } *)
-  aux_value_base_reg : word;
-
-  (* Link to a list of aliases for this symbol.
-     Only a "primary/main symbol may have aliases.  *)
-  aliases : pointer{palias_list};
-
-  (* List of ranges where this symbol is active.  This is only
-     used by alias symbols at the current time.  *)
-  ranges : pointer{prange_list};
-  end;
-
-     target_signal = (TARGET_SIGNAL_FIRST := 0,
-       TARGET_SIGNAL_HUP := 1,TARGET_SIGNAL_INT := 2,
-       TARGET_SIGNAL_QUIT := 3,TARGET_SIGNAL_ILL := 4,
-       TARGET_SIGNAL_TRAP := 5,TARGET_SIGNAL_ABRT := 6,
-       TARGET_SIGNAL_EMT := 7,TARGET_SIGNAL_FPE := 8,
-       TARGET_SIGNAL_KILL := 9,TARGET_SIGNAL_BUS := 10,
-       TARGET_SIGNAL_SEGV := 11,TARGET_SIGNAL_SYS := 12,
-       TARGET_SIGNAL_PIPE := 13,TARGET_SIGNAL_ALRM := 14,
-       TARGET_SIGNAL_TERM := 15,TARGET_SIGNAL_URG := 16,
-       TARGET_SIGNAL_STOP := 17,TARGET_SIGNAL_TSTP := 18,
-       TARGET_SIGNAL_CONT := 19,TARGET_SIGNAL_CHLD := 20,
-       TARGET_SIGNAL_TTIN := 21,TARGET_SIGNAL_TTOU := 22,
-       TARGET_SIGNAL_IO := 23,TARGET_SIGNAL_XCPU := 24,
-       TARGET_SIGNAL_XFSZ := 25,TARGET_SIGNAL_VTALRM := 26,
-       TARGET_SIGNAL_PROF := 27,TARGET_SIGNAL_WINCH := 28,
-       TARGET_SIGNAL_LOST := 29,TARGET_SIGNAL_USR1 := 30,
-       TARGET_SIGNAL_USR2 := 31,TARGET_SIGNAL_PWR := 32,
-       TARGET_SIGNAL_POLL := 33,TARGET_SIGNAL_WIND := 34,
-       TARGET_SIGNAL_PHONE := 35,TARGET_SIGNAL_WAITING := 36,
-       TARGET_SIGNAL_LWP := 37,TARGET_SIGNAL_DANGER := 38,
-       TARGET_SIGNAL_GRANT := 39,TARGET_SIGNAL_RETRACT := 40,
-       TARGET_SIGNAL_MSG := 41,TARGET_SIGNAL_SOUND := 42,
-       TARGET_SIGNAL_SAK := 43,TARGET_SIGNAL_PRIO := 44,
-       TARGET_SIGNAL_REALTIME_33 := 45,TARGET_SIGNAL_REALTIME_34 := 46,
-       TARGET_SIGNAL_REALTIME_35 := 47,TARGET_SIGNAL_REALTIME_36 := 48,
-       TARGET_SIGNAL_REALTIME_37 := 49,TARGET_SIGNAL_REALTIME_38 := 50,
-       TARGET_SIGNAL_REALTIME_39 := 51,TARGET_SIGNAL_REALTIME_40 := 52,
-       TARGET_SIGNAL_REALTIME_41 := 53,TARGET_SIGNAL_REALTIME_42 := 54,
-       TARGET_SIGNAL_REALTIME_43 := 55,TARGET_SIGNAL_REALTIME_44 := 56,
-       TARGET_SIGNAL_REALTIME_45 := 57,TARGET_SIGNAL_REALTIME_46 := 58,
-       TARGET_SIGNAL_REALTIME_47 := 59,TARGET_SIGNAL_REALTIME_48 := 60,
-       TARGET_SIGNAL_REALTIME_49 := 61,TARGET_SIGNAL_REALTIME_50 := 62,
-       TARGET_SIGNAL_REALTIME_51 := 63,TARGET_SIGNAL_REALTIME_52 := 64,
-       TARGET_SIGNAL_REALTIME_53 := 65,TARGET_SIGNAL_REALTIME_54 := 66,
-       TARGET_SIGNAL_REALTIME_55 := 67,TARGET_SIGNAL_REALTIME_56 := 68,
-       TARGET_SIGNAL_REALTIME_57 := 69,TARGET_SIGNAL_REALTIME_58 := 70,
-       TARGET_SIGNAL_REALTIME_59 := 71,TARGET_SIGNAL_REALTIME_60 := 72,
-       TARGET_SIGNAL_REALTIME_61 := 73,TARGET_SIGNAL_REALTIME_62 := 74,
-       TARGET_SIGNAL_REALTIME_63 := 75,TARGET_SIGNAL_UNKNOWN,
-       TARGET_SIGNAL_DEFAULT,TARGET_SIGNAL_LAST
-       );
-
-     strata = (dummy_stratum,file_stratum,core_stratum,download_stratum,process_stratum);
-
-     ptarget_ops = ^target_ops;
-     target_ops = record
-          to_shortname : pchar;
-          to_longname : pchar;
-          to_doc : pchar;
-          to_open : procedure (_para1:pchar; _para2:longint);
-          to_close : procedure (_para1:longint);
-          to_attach : procedure (_para1:pchar; _para2:longint);
-          to_detach : procedure (_para1:pchar; _para2:longint);
-          to_resume : procedure (_para1:longint; _para2:longint; _para3:target_signal);
-          to_wait : pointer; {function (_para1:longint; _para2:ptarget_waitstatus):longint;}
-          to_fetch_registers : procedure (_para1:longint);
-          to_store_registers : procedure (_para1:longint);
-          to_prepare_to_store : procedure ;
-          to_xfer_memory : function (memaddr:CORE_ADDR; myaddr:pchar; len:longint; write:longint; target:ptarget_ops):longint;
-          to_files_info : procedure (_para1:ptarget_ops);
-          to_insert_breakpoint : function (_para1:CORE_ADDR; _para2:pchar):longint;
-          to_remove_breakpoint : function (_para1:CORE_ADDR; _para2:pchar):longint;
-          to_terminal_init : procedure ;
-          to_terminal_inferior : procedure ;
-          to_terminal_ours_for_output : procedure ;
-          to_terminal_ours : procedure ;
-          to_terminal_info : procedure (_para1:pchar; _para2:longint);
-          to_kill : procedure ;
-          to_load : procedure (_para1:pchar; _para2:longint);
-          to_lookup_symbol : function (_para1:pchar; _para2:pCORE_ADDR):longint;
-          to_create_inferior : procedure (_para1:pchar; _para2:pchar; _para3:ppchar);
-          to_mourn_inferior : procedure ;
-          to_can_run : function :longint;
-          to_notice_signals : procedure (pid:longint);
-          to_thread_alive : function (pid:longint):longint;
-          to_stop : procedure ;
-          to_stratum : strata;
-          DONT_USE : pointer;
-          to_has_all_memory : longint;
-          to_has_memory : longint;
-          to_has_stack : longint;
-          to_has_registers : longint;
-          to_has_execution : longint;
-          to_sections : pointer; {^section_table}
-          to_sections_end : pointer; {^section_table}
-          to_magic : longint;
-       end;
-
-{$PACKRECORDS NORMAL}
-
-{*****************************************************************************
-                   Define external calls to libgdb.a
-*****************************************************************************}
-
-var
-{ external variables }
-  error_return : jmp_buf;cvar;{$ifndef GDB_V5}external;{$endif}
-  quit_return  : jmp_buf;cvar;{$ifndef GDB_V5}external;{$endif}
-  create_breakpoint_hook : pointer;cvar;external;
-  current_target : target_ops;cvar;external;
-  stop_pc      : CORE_ADDR;cvar;external;
-  { Only used from GDB 5.01 but doesn't hurst otherwise }
-  interpreter_p : pchar;cvar;
-
-{ we need also to declare some vars }
-  watchdog      : longint;cvar;public;
-  gdb_error     : longint;cvar;public;
-  display_time  : longbool;cvar;public;
-  display_space : longbool;cvar;public;
-
-{$ifndef GDB_V416}
-{ the following are also needed from version 4.18 }
-
-{ Whether this is the command line version or not }
-  tui_version : longint;cvar;public;
-
-{ Whether xdb commands will be handled }
-  xdb_commands : longint;cvar;public;
-
-{ Whether dbx commands will be handled }
-  dbx_commands : longint;cvar;public;
-
-{$ifndef GDB_V5}
-var
-  gdb_stdout : PGDB_FILE;cvar;public;
-  gdb_stderr : PGDB_FILE;cvar;public;
-{$else GDB_V5}
-var
-  gdb_stdout : pui_file;cvar;public;
-  gdb_stderr : pui_file;cvar;public;
-  gdb_stdlog : pui_file;cvar;public;
-  gdb_stdtarg : pui_file;cvar;public;
-  event_loop_p : longint;cvar;public;
-{$endif GDB_V5}
-
-{ used for gdb_stdout and gdb_stderr }
-function xmalloc(size : longint) : pointer;cdecl;external;
-
-{$endif not GDB_V416}
-
-function  find_pc_line(i:CORE_ADDR;l:longint):symtab_and_line;cdecl;external;
-function  find_pc_function(i:CORE_ADDR):psymbol;cdecl;external;
-function  lookup_minimal_symbol_by_pc(i : CORE_ADDR):pminimal_symbol;cdecl;external;
-procedure gdb_init;cdecl;external;
-procedure execute_command(p:pchar;i:longint);cdecl;external;
-procedure target_kill;cdecl;external;
-procedure target_close(i:longint);cdecl;external;
-
-
-{*****************************************************************************
-                                 Helpers
-*****************************************************************************}
-
-procedure Debug(const s:string);
-begin
-  if use_gdb_file then
-    Writeln(gdb_file,s)
-  else
-    Writeln(s);
-end;
-
-
-{*****************************************************************************
-                               TFrameEntry
-*****************************************************************************}
-
-constructor tframeentry.init;
-begin
-  Reset;
-end;
-
-destructor tframeentry.done;
-begin
-  Clear;
-end;
-
-procedure tframeentry.reset;
-begin
-  file_name:=nil;
-  function_name:=nil;
-  args:=nil;
-  line_number:=0;
-  address:=0;
-end;
-
-procedure tframeentry.clear;
-begin
-  if assigned(file_name) then
-   strdispose(file_name);
-  if assigned(function_name) then
-   strdispose(function_name);
-  if assigned(args) then
-   strdispose(args);
-  reset;
-end;
-
-
-{*****************************************************************************
-                                 tgdbbuffer
-*****************************************************************************}
-
-const
-  blocksize=2048;
-
-constructor tgdbbuffer.init;
-begin
-  Buf:=nil;
-{$ifdef GDB_V418}
-  link:=nil;
-{$endif GDB_V418}
-{$ifdef GDB_V5}
-  gdb_file:=nil;
-{$endif GDB_V5}
-  Size:=0;
-  Resize(blocksize);
-  Reset;
-end;
-
-
-destructor tgdbbuffer.done;
-begin
-  if assigned(buf) then
-    freemem(buf,size);
-{$ifdef GDB_V418}
-  if assigned(link) then
-    begin
-      link^.ts_streamtype:=afile;
-      link^.ts_strbuf:=nil;
-      link^.ts_buflen:=0;
-    end;
-{$endif GDB_V418}
-end;
-
-
-
-procedure tgdbbuffer.reset;
-begin
-  idx:=0;
-  Buf[0]:=#0;
-end;
-
-
-procedure tgdbbuffer.append(p:pchar);
-var
-  len : longint;
-begin
-  if not assigned(p) then
-   exit;
-  len:=Strlen(p);
-  if len+idx>size then
-   Resize(len+idx);
-  Move(p^,buf[idx],len);
-  inc(idx,len);
-  buf[idx]:=#0;
-end;
-
-
-procedure tgdbbuffer.lappend(p:pchar;len : longint);
-begin
-  if not assigned(p) then
-   exit;
-  if len+idx>size then
-   Resize(len+idx);
-  Move(p^,buf[idx],len);
-  inc(idx,len);
-  buf[idx]:=#0;
-end;
-
-
-procedure tgdbbuffer.resize(nsize : longint);
-var
-  np    : pchar;
-begin
-  nsize:=((nsize+blocksize-1) div blocksize)*blocksize;
-  getmem(np,nsize);
-  if assigned(buf) then
-    begin
-       move(buf^,np^,size);
-       freemem(buf,size);
-    end;
-  buf:=np;
-  size:=nsize;
-{$ifdef GDB_V418}
-  if assigned(link) then
-    begin
-      link^.ts_strbuf:=buf;
-      link^.ts_buflen:=size;
-    end;
-{$endif GDB_V418}
-end;
-
-
-{*****************************************************************************
-                         Hook calls from libgdb.a
-*****************************************************************************}
-
-{$ifdef go32v2}
-procedure gdbpas_prev_exception_handler;cdecl;public;
-begin
-end;
-{$endif go32v2}
-
-procedure init_proc;cdecl;public;
-begin
-end;
-
-
-procedure annotate_signalled;cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|signalled|');
-{$endif}
-end;
-
-
-procedure annotate_signal_name;cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|signal_name|');
-  with curr_gdb^ do
-   signal_start:=gdboutputbuf.idx;
-{$endif}
-end;
-
-
-procedure annotate_signal_name_end;cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|signal_name_end|');
-{$endif}
-end;
-
-
-procedure annotate_signal_string;cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|signal_string|');
-{$endif}
-end;
-
-
-procedure annotate_signal_string_end;cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|signal_string_end|');
-{$endif}
-  with curr_gdb^ do
-   begin
-     signal_end:=gdboutputbuf.idx;
-{
-  signal = (char *)alloca(signal_end-signal_start+1);
-  strncpy(signal,gdb_output_buffer+signal_start,signal_end-signal_start);
-  signal[signal_end-signal_start] = 0;
-  if (user_screen_shown)
-    __DebuggerScreen();
-    _UserWarning(WARN_SIGNALED,signal);
-    __UserScreen();
-  else
-    _UserWarning(WARN_SIGNALED,signal); }
-     call_reset:=true;
-   end;
-end;
-
-
-procedure annotate_signal;cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|signal|');
-{$endif}
-end;
-
-
-procedure annotate_exited(exitstatus:longint);cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|exited|');
-{$endif}
-{#ifdef __DJGPP__
- /* this is very important. The exit code of a djgpp program
-   disables interrupts and after this there is no other interrupt
-   called, which enables interrupts with the iret. */
-  __dpmi_get_and_enable_virtual_interrupt_state();
-#endif }
-{$ifdef go32v2}
-   {$asmmode att}
-     asm
-        movw $0x901,%ax
-        int  $0x31
-     end;
-   {$asmmode default}
-   reload_fs;
-{$endif def go32v2}
-
-  curr_gdb^.DebuggerScreen;
-{  DeleteBreakPoints; }
-  curr_gdb^.EndSession(exitstatus);
-end;
-
-
-procedure annotate_error;cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|error|');
-{$endif}
-end;
-
-
-procedure annotate_error_begin;cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|error begin|');
-{$endif}
-  with curr_gdb^ do
-   begin
-     error_start:=gdboutputbuf.idx+strlen(gdboutputbuf.buf);
-     got_error:=true;
-   end;
-{$ifdef Verbose}
-  Debug('|end of error begin|');
-{$endif}
-end;
-
-
-procedure annotate_starting;cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|starting|');
-{$endif}
-{$ifdef go32v2}
-     reload_fs;
-{$endif go32v2}
-  curr_gdb^.UserScreen;
-end;
-
-
-procedure annotate_stopped;cdecl;public;
-var
-  sym : symtab_and_line;
-  fname : pchar;
-begin
-{$ifdef Verbose}
-  Debug('|stopped|');
-{$endif}
-  with curr_gdb^ do
-   begin
-{$ifdef go32v2}
-     reload_fs;
-{$endif go32v2}
-     DebuggerScreen;
-     current_pc:=stop_pc;
-     Debuggee_started:=inferior_pid<>0;
-     if not Debuggee_started then exit;
-     if reset_command then exit;
-      sym:=find_pc_line(stop_pc,0);
-     if assigned(sym.symtab) then
-      fname:=sym.symtab^.filename
-     else
-      fname:=nil;
-     SelectSourceLine(fname,sym.line);
-   end;
-end;
-
-{$ifdef GDB_USES_PTID}
-function inferior_pid : longint;
-begin
-  inferior_pid:=inferior_ptid.pid;
-end;
-{$endif}
-
-procedure proc_remove_foreign(pid:longint);cdecl;public;
-begin
-end;
-
-
-procedure breakpoints_changed;cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|breakpoints_changed|');
-{$endif}
-end;
-
-{ only from version 5.0 }
-procedure annotate_ignore_count_change;cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|annotate_ignore_count_change()|');
-{$endif}
-end;
-
-
-procedure annotate_breakpoint(num:longint);cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|breakpoint(%d)|');
-{$endif}
-  With Curr_gdb^ do
-    stop_breakpoint_number:=num;
-end;
-
-
-procedure annotate_watchpoint(num:longint);cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|watchpoint(%d)|');
-{$endif}
-  With Curr_gdb^ do
-    stop_breakpoint_number:=num;
-end;
-
-procedure annotate_catchpoint(num:longint);cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|catchpoint(%d)|');
-{$endif}
-  With Curr_gdb^ do
-    stop_breakpoint_number:=num;
-end;
-
-
-procedure annotate_breakpoints_headers;cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|breakpoints_headers|');
-{$endif}
-end;
-
-
-procedure annotate_breakpoints_table;cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|breakpoints_table|');
-{$endif}
-end;
-
-
-procedure annotate_record;cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|record|');
-{$endif}
-end;
-
-
-procedure annotate_breakpoints_table_end;cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|breakpoints_table_end|');
-{$endif}
-end;
-
-
-procedure annotate_frames_invalid;cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|frames_invalid|');
-{$endif}
-end;
-
-
-procedure annotate_frame_begin(level:longint;pc:CORE_ADDR);cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|frame_begin(%d,%ld)|');
-{$endif}
-  with curr_gdb^ do
-   begin
-     frame_begin_seen:=true;
-     frame_level:=level;
-     current_address:=pc;
-     current_line_number:=-1;
-     function_start:=-1;
-     function_end:=-1;
-     args_start:=-1;
-     args_end:=-1;
-     file_start:=-1;
-     file_end:=-1;
-     line_start:=-1;
-     line_end:=-1;
-   end;
-end;
-
-
-procedure annotate_frame_address;cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|frame_address|');
-{$endif}
-end;
-
-
-procedure annotate_frame_address_end;cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|frame_address_end|');
-{$endif}
-end;
-
-procedure annotate_frame_function_name;cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|frame_function_name|');
-{$endif}
-  with curr_gdb^ do
-   function_start:=gdboutputbuf.idx;
-end;
-
-
-procedure annotate_frame_args;cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|frame_args|');
-{$endif}
-  with curr_gdb^ do
-   begin
-     function_end:=gdboutputbuf.idx;
-     args_start:=gdboutputbuf.idx;
-   end;
-end;
-
-procedure annotate_frame_source_begin;cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|frame_source_begin|');
-{$endif}
-  with curr_gdb^ do
-   args_end:=gdboutputbuf.idx;
-end;
-
-
-procedure annotate_frame_source_file;cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|frame_source_file|');
-{$endif}
-  with curr_gdb^ do
-   file_start:=gdboutputbuf.idx;
-end;
-
-procedure annotate_frame_source_file_end;cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|frame_source_file_end|');
-{$endif}
-  with curr_gdb^ do
-   file_end:=gdboutputbuf.idx;
-end;
-
-
-procedure annotate_frame_source_line;cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|frame_source_line|');
-{$endif}
-  with curr_gdb^ do
-   line_start:=gdboutputbuf.idx;
-end;
-
-
-procedure annotate_frame_source_end;cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|frame_source_end|');
-{$endif}
-  with curr_gdb^ do
-   line_end:=gdboutputbuf.idx;
-end;
-
-
-procedure annotate_frame_where;cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|frame_where|');
-{$endif}
-end;
-
-
-procedure annotate_frame_end;cdecl;public;
-var
-  fe : pframeentry;
-  c  : char;
-  err : integer;
-begin
-{$ifdef Verbose}
-  Debug('|frame_end|');
-{$endif}
-  with curr_gdb^ do
-   begin
-     if (not record_frames) or (not frame_begin_seen) then
-      exit;
-     { This can happen, when the function has no Debugging information }
-     if (args_start >= 0) and (args_end < 0) then
-      args_end:=gdboutputbuf.idx;
-     frame_begin_seen:=false;
-     fe:=get_frameentry(frame_level);
-     fe^.address:=current_address;
-     fe^.level:=frame_level;
-     if (function_start>=0) then
-      begin
-        c:=gdboutputbuf.buf[function_end];
-        gdboutputbuf.buf[function_end]:=#0;
-        fe^.function_name:=strnew(gdboutputbuf.buf+function_start);
-        gdboutputbuf.buf[function_end]:=c;
-      end;
-     if (file_start>=0)  then
-      begin
-        c:=gdboutputbuf.buf[file_end];
-        gdboutputbuf.buf[file_end]:=#0;
-        fe^.file_name:=strnew(gdboutputbuf.buf+file_start);
-        gdboutputbuf.buf[file_end]:=c;
-      end;
-     if (args_start>=0) then
-      begin
-        if (gdboutputbuf.buf[args_end-1]=#10) then
-         dec(args_end);
-        c:=gdboutputbuf.buf[args_end];
-        gdboutputbuf.buf[args_end]:=#0;
-        fe^.args:=strnew(gdboutputbuf.buf+args_start);
-        gdboutputbuf.buf[args_end]:=c;
-      end;
-     if (line_start>=0) then
-      begin
-        c:=gdboutputbuf.buf[line_end];
-        gdboutputbuf.buf[line_end]:=#0;
-{     sscanf(gdb_output_buffer+line_start,'%d',&fe^.line_number); }
-        val(strpas(pchar(@gdboutputbuf.buf[line_start])),fe^.line_number,err);
-        gdboutputbuf.buf[line_end]:=c;
-      end;
-   end;
-end;
-
-
-procedure annotate_quit;cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|quit|');
-{$endif}
-end;
-
-
-procedure annotate_arg_begin;cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|arg_begin|');
-{$endif}
-end;
-
-
-procedure annotate_arg_name_end;cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|arg_name_end|');
-{$endif}
-end;
-
-
-procedure annotate_arg_value(typ:pointer);cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|arg_value|');
-{$endif}
-end;
-
-
-procedure annotate_arg_end;cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|arg_end|');
-{$endif}
-end;
-
-procedure annotate_source(filename:pchar;line,character,mid:longint;pc:CORE_ADDR);cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|source|');
-{$endif}
-end;
-
-
-procedure annotate_function_call;cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|function_call|');
-{$endif}
-end;
-
-
-procedure annotate_signal_handler_caller;cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|signal_handler_caller|');
-{$endif}
-end;
-
-
-procedure annotate_array_section_begin(index:longint;elttype:pointer);cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|array_section_begin()|');
-{$endif}
-end;
-
-
-procedure annotate_elt_rep(repcount:longint);cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|elt_rep()|');
-{$endif}
-end;
-
-procedure annotate_elt_rep_end;cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|elt_rep_end|');
-{$endif}
-end;
-
-
-procedure annotate_elt;cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|elt|');
-{$endif}
-end;
-
-
-procedure annotate_array_section_end;cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|array_section_end|');
-{$endif}
-end;
-
-procedure annotate_display_begin;cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|display_begin|');
-{$endif}
-end;
-
-
-procedure annotate_display_number_end;cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|display_number_end|');
-{$endif}
-end;
-
-
-procedure annotate_display_format;cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|display_format|');
-{$endif}
-end;
-
-procedure annotate_display_expression;cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|display_expression|');
-{$endif}
-end;
-
-
-procedure annotate_display_expression_end;cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|display_expression_end|');
-{$endif}
-end;
-
-
-procedure annotate_display_value;cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|display_value|');
-{$endif}
-end;
-
-
-procedure annotate_display_end;cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('|display_end|');
-{$endif}
-end;
-
-
-procedure annotate_field (num:longint);cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('a_field(%d)');
-{$endif}
-end;
-
-
-procedure annotate_field_begin(typ:pointer);cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('a_field_begin\n');
-{$endif}
-end;
-
-
-procedure annotate_field_name_end;cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('a_field_name_end\n');
-{$endif}
-end;
-
-
-procedure annotate_field_value;cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('a_field_value\n');
-{$endif}
-end;
-
-
-procedure annotate_field_end;cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('a_field_end\n');
-{$endif}
-end;
-
-
-procedure annotate_value_history_begin (histindex:longint;typ:pointer);cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('a_value_history_begin(%d)\n');
-{$endif}
-end;
-
-
-procedure annotate_value_begin (typ:pointer);cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('a_value_begin\n');
-{$endif}
-end;
-
-
-procedure annotate_value_history_value;cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('a_value_history_value\n');
-{$endif}
-end;
-
-
-procedure annotate_value_history_end;cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('a_value_history_end\n');
-{$endif}
-end;
-
-
-procedure annotate_value_end;cdecl;public;
-begin
-{$ifdef Verbose}
-  Debug('a_value_end\n');
-{$endif}
-end;
-
-
-procedure _initialize_annotate;cdecl;public;
-begin
-end;
-
-{$ifndef GDB_V5}
-procedure fputs_unfiltered(linebuffer:pchar;stream:pointer);cdecl;public;
-begin
-  with curr_gdb^ do
-{$ifdef gdb_v418}
-  if stream = gdb_stderr then
-     gdberrorbuf.append(linebuffer)
-  else
-{$endif gdb_v418}
-     gdboutputbuf.append(linebuffer);
-end;
-{$else GDB_V5}
-
-procedure gdbint_ui_file_write(stream : pui_file; p : pchar; len : longint);cdecl;
-begin
-  if assigned(curr_gdb) then
-   with curr_gdb^ do
-    if stream = gdb_stderr then
-       gdberrorbuf.lappend(p,len)
-    else if stream = gdb_stdout then
-       gdboutputbuf.lappend(p,len)
-    else
-      begin
-       gdberrorbuf.append('Unknown gdb ui_file');
-       gdberrorbuf.lappend(p,len);
-      end;
-end;
-{$endif GDB_V5}
-
-
-procedure CreateBreakPointHook(var b:breakpoint);cdecl;
-var
-  sym : symtab_and_line;
-
-{ this procedure is only here to avoid the problems
-  with different version of gcc having different stack
-  handling:
-  on older versions find_pc_line uses just "ret"
-  while on newer gcc version "ret $4" is used
-  if this call is within the CreateBreakPointHook function
-  it changes %esp and thus the registers are
-  not restored correctly PM }
-  procedure get_pc_line;
-    begin
-      sym:=find_pc_line(b.address,0);
-    end;
-begin
-  get_pc_line;
-  with curr_gdb^ do
-   begin
-     last_breakpoint_number:=b.number;
-     { function breakpoints have zero as file and as line !!
-       but they are valid !! }
-     invalid_breakpoint_line:=(b.line_number<>sym.line) and (b.line_number<>0);
-     last_breakpoint_address:=b.address;
-     last_breakpoint_line:=sym.line;
-     if assigned(sym.symtab) then
-      last_breakpoint_file:=sym.symtab^.filename
-     else
-      last_breakpoint_file:=nil;
-   end;
-end;
-
-
-{*****************************************************************************
-                                 tgdbinterface
-*****************************************************************************}
-
-constructor tgdbinterface.init;
-begin
-  gdboutputbuf.init;
-  gdberrorbuf.init;
-  record_frames:=true;
-{$ifdef GDB_V418}
-(* GDB_FILE *
-  gdb_file_init_astring (n)
-    int n;
-  should we use xmalloc ?
-  gdb could resize the buffer => crash,
-  but normally it should not if unfiltered !! PM *)
-  gdb_stdout^.ts_streamtype := astring;
-  gdb_stdout^.ts_strbuf := gdboutputbuf.buf;
-  gdb_stdout^.ts_buflen := gdboutputbuf.size;
-  gdboutputbuf.link:=gdb_stdout;
-
-  gdb_stderr^.ts_streamtype := astring;
-  gdb_stderr^.ts_strbuf := gdberrorbuf.buf;
-  gdb_stderr^.ts_buflen := gdberrorbuf.size;
-  gdberrorbuf.link:=gdb_stderr;
-{$endif GDB_V418}
-
-{$ifdef GDB_V5}
-
-{$endif GDB_V5}
-  { This must be placed before gdb__init is called
-    as gdb_init might issue output PM }
-  curr_gdb:=@self;
-  gdb__init;
-  command_level:=0;
-{ set output mode for GDB }
-{ only these values disable filtering
-  DONT CHANGE THEM !!! PM }
-  gdb_command('set width 0xffffffff');
-  gdb_command('set height 0xffffffff');
-{ other standard commands used for fpc debugging }
-  gdb_command('set print demangle off');
-  gdb_command('set gnutarget auto');
-  gdb_command('set language auto');
-  gdb_command('set print vtbl on');
-  gdb_command('set print object on');
-  gdb_command('set print null-stop');
-end;
-
-
-destructor tgdbinterface.done;
-begin
-  clear_frames;
-  gdb_done;
-  gdboutputbuf.done;
-  gdberrorbuf.done;
-end;
-
-
-procedure tgdbinterface.gdb__init;
-begin
-  gdboutputbuf.reset;
-  gdberrorbuf.reset;
-  create_breakpoint_hook:=@CreateBreakPointHook;
-end;
-
-
-
-procedure tgdbinterface.gdb_done;
-begin
-  if debuggee_started then
-    begin
-      current_target.to_kill;
-      current_target.to_close(1);
-    end;
-  create_breakpoint_hook:=nil;
-end;
-
-
-function tgdbinterface.error:boolean;
-begin
-  error:=got_error;
-end;
-
-function tgdbinterface.error_num:longint;
-begin
-  error_num:=gdb_error;
-end;
-
-var
-   top_level_val : longint;
-
-{$ifdef GDB_V5}
-function catch_errors(func : pointer; command : pchar; from_tty,mask : longint) : longint;cdecl;external;
-
-function gdbint_execute_command(command : pchar; from_tty,mask : longint) : longint;cdecl;
-begin
-  gdbint_execute_command:=1;
-  execute_command(command,from_tty);
-  gdbint_execute_command:=0;
-end;
-{$endif GDB_V5}
-
-procedure tgdbinterface.gdb_command(const s:string);
-var
-  command          : array[0..256] of char;
-{$ifdef GDB_V5}
-  mask : longint;
-{$endif GDB_V5}
-  s2 : string;
-  old_quit_return,
-  old_error_return : jmp_buf;
-begin
-  inc(command_level);
-  move(s[1],command,length(s));
-  command[length(s)]:=#0;
-  old_quit_return:=quit_return;
-  old_error_return:=error_return;
-  gdb_error:=0;
-  got_error:=false;
-  stop_breakpoint_number:=0;
-  { Trap quit commands }
-  s2:=s;
-  while (length(s2)>0) and ((s2[1]=' ') or (s2[1]=#9)) do
-    s2:=copy(s2,2,255);
-  if (length(s2)>0) and
-     (UpCase(s2[1])='Q') and
-     ((length(s2)=1) or
-      (s2[2]=' ') or
-      ((UpCase(s2[2])='U') and
-      ((length(s2)=2) or
-       (s2[3]=' ') or
-       ((UpCase(s2[3])='I') and
-        ((length(s2)=3) or
-         (s2[4]=' ') or
-         ((UpCase(s2[4])='T') and
-          ((length(s2)=4) or
-           (s2[5]=' ')
-     ))))))) then
-    begin
-      if not AllowQuit then
-        exit;
-    end;
-{$ifdef DebugCommand}
-  Debug('start of handle_gdb_command ('+s+')');
-{$endif}
-  top_level_val:=setjmp(error_return);
-  if top_level_val=0 then
-   begin
-     quit_return:=error_return;
-{$ifdef GDB_V5}
-     mask:=$ffffffff;
-     catch_errors(@gdbint_execute_command,@command,0,mask);
-{$else not  GDB_V5}
-     execute_command(@command,0);
-{$endif not  GDB_V5}
-{$ifdef go32v2}
-     reload_fs;
-{$endif go32v2}
-   end
-  else
-{$ifdef Verbose}
-    Debug('error longjmp in handle_gdb_command ('+s+')');
-{$endif}
-   ;
-{$ifdef DebugCommand}
-  Debug('end of handle_gdb_command ('+s+')');
-{$endif}
-  quit_return:=old_quit_return;
-  error_return:=old_error_return;
-  dec(command_level);
-end;
-
-
-procedure tgdbinterface.resize_frames;
-var
-  i : longint;
-  new_frames : ppframeentry;
-begin
-  if (frame_count>=frame_size) then
-   begin
-     getmem(new_frames,sizeof(pointer)*(frame_count+1));
-     for i:=0 to frame_size-1 do
-       new_frames[i]:=frames[i];
-     if assigned(frames) then
-       freemem(frames,sizeof(pointer)*frame_size);
-     frames:=new_frames;
-     frame_size:=frame_count+1;
-     for i:=frame_count to frame_size-1 do
-      frames[i]:=new(pframeentry,init);
-  end;
-end;
-
-
-function tgdbinterface.add_frameentry:pframeentry;
-begin
-  resize_frames;
-  add_frameentry:=frames[frame_count];
-  inc(frame_count);
-end;
-
-function tgdbinterface.get_frameentry(level : longint) : pframeentry;
-begin
-  { only climb values one by one PM }
-  if level>=frame_count then
-    resize_frames;
-  get_frameentry:=frames[level];
-  frames[level]^.clear;
-  if level>=frame_count then
-    inc(frame_count);
-end;
-
-
-procedure tgdbinterface.clear_frames;
-var
-  i : longint;
-begin
-  for i:=0 to frame_size-1 do
-   dispose(frames[i],done);
-  freemem(frames,sizeof(pointer)*Frame_size);
-  frame_count:=0;
-  frame_size:=0;
-end;
-
-function tgdbinterface.get_current_frame : longint;
-begin
-  record_frames:=false;
-  gdb_command('f');
-  get_current_frame:=frame_level;
-  record_frames:=true;
-end;
-
-function tgdbinterface.set_current_frame(level : longint) : boolean;
-var
-  s : string;
-begin
-  record_frames:=false;
-  str(level,s);
-  gdb_command('f '+s);
-  if level=frame_level then
-    set_current_frame:=true
-  else
-    set_current_frame:=false;
-  record_frames:=true;
-end;
-
-
-{*****************************************************************************
-                      Highlevel tgdbinterface
-*****************************************************************************}
-
-procedure tgdbinterface.GetAddrSyminfo(addr:longint;var si:tsyminfo);
-var
-  sym : symtab_and_line;
-  symbol : psymbol;
-begin
-  sym:=find_pc_line(addr,1);
-  fillchar(si,sizeof(tsyminfo),0);
-  si.address:=addr;
-  si.offset:=addr-sym.pc;
-  if assigned(sym.symtab) then
-   si.fname:=sym.symtab^.filename
-  else
-   si.fname:=nil;
-  si.line:=sym.line;
-  symbol:=find_pc_function(addr);
-  if assigned(symbol) then
-   si.funcname:=symbol^.ginfo._name
-  else
-   si.funcname:=nil;
-end;
-
-
-procedure tgdbinterface.SelectSourceLine(fn:pchar;line:longint);
-begin
-  if assigned(fn) then
-   DoSelectSourceLine(StrPas(fn),line)
-  else
-   DoSelectSourceLine('',line);
-end;
-
-
-procedure tgdbinterface.StartSession;
-begin
-  DoStartSession;
-end;
-
-
-procedure tgdbinterface.BreakSession;
-begin
-  DoBreakSession;
-end;
-
-
-procedure tgdbinterface.EndSession(code:longint);
-begin
-  Debuggee_started:=false;
-{$ifdef Go32v2}
-{$ifdef GDB_USES_PTID}
-  inferior_ptid.pid:=0;
-{$else}
-  inferior_pid:=0;
-{$endif}
-{$endif}
-  DoEndSession(code);
-end;
-
-
-procedure tgdbinterface.DebuggerScreen;
-begin
-{$ifdef Verbose}
-  Debug('|DebuggerScreen|');
-{$endif}
-  if user_screen_shown then
-   DoDebuggerScreen;
-  user_screen_shown:=false;
-end;
-
-
-procedure tgdbinterface.UserScreen;
-begin
-{$ifdef Verbose}
-  Debug('|UserScreen|');
-{$endif}
-  if switch_to_user then
-   begin
-     if (not user_screen_shown) then
-      DoUserScreen;
-     user_screen_shown:=true;
-   end;
-end;
-
-
-
-{---------------------------------------
-          Default Hooks
----------------------------------------}
-
-procedure tgdbinterface.DoSelectSourceLine(const fn:string;line:longint);
-{$ifdef Verbose}
-var
-  s : string;
-{$endif}
-begin
-{$ifdef Verbose}
-  Str(line,S);
-  Debug('|SelectSource '+fn+':'+s+'|');
-{$endif}
-end;
-
-procedure tgdbinterface.DoStartSession;
-begin
-end;
-
-procedure tgdbinterface.DoBreakSession;
-begin
-end;
-
-procedure tgdbinterface.DoEndSession(code:longint);
-begin
-end;
-
-procedure tgdbinterface.DoDebuggerScreen;
-begin
-end;
-
-procedure tgdbinterface.DoUserScreen;
-begin
-end;
-
-function  tgdbinterface.AllowQuit : boolean;
-begin
-  AllowQuit:=true;
-end;
-
-{$ifdef GDB_V5}
-var
-  version : array[0..0] of char;cvar;external;
-
-procedure error_init;cdecl;external;
-
-{$else}
-var
-  version : pchar;cvar;
-{$endif}
-
-function  GDBVersion : string;
-begin
-  GDBVersion:='GDB '+StrPas(version);
-end;
-
-
-const next_exit : pointer = nil;
-procedure DoneLibGDB;
-begin
-  exitproc:=next_exit;
-{$ifdef GDB_V418}
-  if assigned(gdb_stdout) then
-    dispose(gdb_stdout);
-  gdb_stdout:=nil;
-  if assigned(gdb_stderr) then
-    dispose(gdb_stderr);
-  gdb_stderr:=nil;
-{$endif GDB_V418}
-end;
-
-{$ifdef go32v2}
-var
-  c_environ : ppchar;external name '_environ';
-  c_argc : longint;external name '___crt0_argc';
-  c_argv : ppchar;external name '___crt0_argv';
-{$endif def go32v2}
-
-{$ifdef GDB_V418}
-{$ifndef go32v2}
-{$ifndef win32}
-var
-   stdout : p_c_file;cvar;external;
-   stderr : p_c_file;cvar;external;
-{$endif win32}
-{$else go32v2}
-{ the type is not really important
-  for external cvars PM
-  but the main problem is that stdout and stderr
-  and defined as macros under DJGPP !! }
-var
-   __dj_stdout : c_file;cvar;external;
-   __dj_stderr : c_file;cvar;external;
-{$endif go32v2}
-{$endif not GDB_V418}
-
-procedure InitLibGDB;
-{$ifdef supportexceptions}
-var
-  OldSigInt : SignalHandler;
-{$endif supportexceptions}
-begin
-{$ifdef go32v2}
-  c_environ:=system.envp;
-  c_argc:=system.argc;
-  c_argv:=system.argv;
-{$endif def go32v2}
-{$ifdef supportexceptions}
-{$ifdef go32v2}
-  OldSigInt:=Signal(SIGINT,SignalHandler(@SIG_DFL));
-{$else}
-  OldSigInt:=Signal(SIGINT,SignalHandler(SIG_DFL));
-{$endif}
-{$endif supportexceptions}
-
-{$ifdef GDB_V418}
-  new(gdb_stdout);
-
-  gdb_stdout^.ts_streamtype := afile;
-{$ifndef go32v2}
-{$ifdef win32}
- gdb_stdout^.ts_filestream := _impure_ptr^.stdout;
-{$else not win32 }
- gdb_stdout^.ts_filestream := stdout;{p_c_file(textrec(output).handle); was wrong PM }
-{$endif not win32 }
-{$else go32v2}
-  gdb_stdout^.ts_filestream := @__dj_stdout;
-{$endif go32v2}
-  gdb_stdout^.ts_strbuf := nil;
-  gdb_stdout^.ts_buflen := 0;
-
-  new(gdb_stderr);
-  gdb_stderr^.ts_streamtype := afile;
-{$ifndef go32v2}
-{$ifdef win32}
-  gdb_stderr^.ts_filestream := _impure_ptr^.stderr;
-{$else not win32 }
-  gdb_stderr^.ts_filestream := stderr;
-{$endif not win32 }
-{$else go32v2}
-  gdb_stderr^.ts_filestream := @__dj_stderr;
-{$endif go32v2}
-  gdb_stderr^.ts_strbuf := nil;
-  gdb_stderr^.ts_buflen := 0;
-{$endif  GDB_V418}
-
-{$ifdef GDB_V5}
-  if assigned(gdb_stderr) then
-    ui_file_delete(gdb_stderr);
-  if assigned(gdb_stdout) then
-    ui_file_delete(gdb_stdout);
-  gdb_stderr:=mem_fileopen;
-  gdb_stdout:=mem_fileopen;
-  gdb_stdlog:=gdb_stderr;
-  gdb_stdtarg:=gdb_stderr;
-  set_ui_file_write(gdb_stdout,@gdbint_ui_file_write);
-  set_ui_file_write(gdb_stderr,@gdbint_ui_file_write);
-  error_init;
-{$endif GDB_V5}
-
-  next_exit:=exitproc;
-  exitproc:=@DoneLibGDB;
-  gdb_init;
-{$ifdef supportexceptions}
-  Signal(SIGINT,OldSigInt);
-{$endif supportexceptions}
-  if setjmp(error_return)=0 then
-    begin
-       quit_return:=error_return;
-       exit;
-    end
-  else
-    begin
-{$ifdef Verbose}
-       Debug('|LongJump to Init|');
-{$endif}
-{$ifdef go32v2}
-       RunError(99);
-{$endif def go32v2}
-    end;
-  WatchDog:=0;
-end;
-
-
-begin
-  InitLibGDB;
-end.
-{
-  $Log$
-  Revision 1.13  2002-01-25 22:39:29  pierre
-   * fix problem with 5.0 lib version
-
-  Revision 1.12  2002/01/24 12:31:51  pierre
-   * fix go32v2 compilation for gdb 5.1
-
-  Revision 1.11  2002/01/24 09:14:39  pierre
-   * adapt to GDB 5.1
-
-  Revision 1.10  2002/01/07 10:31:57  pierre
-   * avoid problem if gdb start generates output
-
-  Revision 1.9  2001/09/19 15:25:56  pierre
-   + define inferior_pid as a function for 5.01
-
-  Revision 1.8  2001/09/11 10:22:36  pierre
-   + NetBSD support
-
-  Revision 1.7  2001/07/31 15:42:11  pierre
-   + first lines to support coming 5.1 release
-
-  Revision 1.6  2001/04/20 18:43:00  marco
-   * Freebsd fix
-
-  Revision 1.5  2001/04/08 11:43:39  peter
-    * merged changes from fixes branch
-
-  Revision 1.4  2001/01/21 21:38:52  marco
-   * renamefest in packages
-
-  Revision 1.3  2000/10/08 10:07:22  peter
-    * merged fixes from Pierre
-
-  Revision 1.2  2000/07/13 11:33:15  michael
-  + removed logs
-}

+ 0 - 189
packages/gdbint/gdbobjs.inc

@@ -1,189 +0,0 @@
-{
-    $Id$
-    Copyright (c) 1999 by Pierre Muller
-    
-    direct GDB objects linking for debug info
-
-    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.
-
- **********************************************************************}
-
-{ gdb-version/gdb directory must be in objects path }
-{ use ifdef or ifndef GDB_V416 to change objects needed for
-  different gdb versions }
-
-{$L infcmd.o}
-{$L symtab.o}
-{$L top.o}
-{$L target.o}
-{$L utils.o}
-{$L breakpoi.o}
-{$L corefile.o}
-{$L symfile.o}
-{$L ../libibert/concat.o}
-{$L environ.o}
-{$L eval.o}
-{$L infrun.o}
-{$L blockfra.o}
-{$L findvar.o}
-{$L printcmd.o}
-{$L i386-tde.o}
-{$L minsyms.o}
-{$L stack.o}
-{$L gdbtypes.o}
-{$L valops.o}
-{$L values.o}
-{$L valprint.o}
-{$L language.o}
-{$L source.o}
-{$L i387-tde.o}
-{$L command.o}
-{$L objfiles.o}
-{$L demangle.o}
-{$L ../libibert/cplus-de.o}
-{$L gnu-rege.o}
-{$L c-typepr.o}
-{$L typeprin.o}
-{$L init.o}
-{$L parse.o}
-{$L serial.o}
-{$L ../libibert/getrunti.o}
-{$L ../readline/complete.o}
-{$L ../readline/readline.o}
-{$L ../readline/history.o}
-{$L ../gdb/version.o}
-{$L inflow.o}
-{$L ../readline/tilde.o}
-{$L ../readline/bind.o}
-{$L mem-brea.o}
-{$L ../libibert/strsigna.o}
-{$L ../bfd/bfd.o}
-{$L ../libibert/vasprint.o}
-{$L ch-lang.o}
-{$ifdef GDB_V416}
-{$L go32targ.o}
-{$else}
-{$L go32-nat.o}
-{$endif}
-{$L thread.o}
-{$L valarith.o}
-{$L expprint.o}
-{$L exec.o}
-{$L ../bfd/corefile.o}
-{$L ../libibert/obstack.o}
-{$L ../bfd/section.o}
-{$L complain.o}
-{$L ../libibert/argv.o}
-{$L ../bfd/opncls.o}
-{$L ../bfd/format.o}
-{$L bcache.o}
-{$L symmisc.o}
-{$L f-lang.o}
-{$L f-valpri.o}
-{$L cp-valpr.o}
-{$L ../opcodes/dis-buf.o}
-{$L ../opcodes/i386-dis.o}
-{$L scm-lang.o}
-{$L ../libibert/basename.o}
-{$L ../libibert/floatfor.o}
-{$L copying.o}
-{$L ser-go32.o}
-{$L remote.o}
-{$L dcache.o}
-{$L remote-u.o}
-{$L buildsym.o}
-{$L maint.o}
-{$L dbxread.o}
-{$L coffread.o}
-{$L elfread.o}
-{$L mipsread.o}
-{$L stabsrea.o}
-{$L c-lang.o}
-{$L m2-lang.o}
-{$L nlmread.o}
-{$L mdebugre.o}
-{$L os9kread.o}
-{$L p-lang.o}
-{$L p-valpri.o}
-{$L ../readline/display.o}
-{$L ../readline/keymaps.o}
-{$L ../readline/rltty.o}
-{$L ../readline/vi_mode.o}
-{$L ../readline/funmap.o}
-{$L ../readline/parens.o}
-{$L ../bfd/cache.o}
-{$L ch-exp.o}
-{$L ch-typep.o}
-{$L ch-valpr.o}
-{$L ../bfd/libbfd.o}
-{$L ../bfd/archures.o}
-{$L ../bfd/targets.o}
-{$L ../bfd/binary.o}
-{$L f-exp_ta.o}
-{$L f-typepr.o}
-{$L c-valpri.o}
-{$L scm-exp.o}
-{$L c-exp_ta.o}
-{$L scm-valp.o}
-{$L dwarfrea.o}
-{$L m2-exp_t.o}
-{$L m2-typep.o}
-{$L m2-valpr.o}
-{$L p-exp_ta.o}
-{$L p-typepr.o}
-{$L ../readline/isearch.o}
-{$L ../readline/search.o}
-{$L ../bfd/cpu-i386.o}
-{$L ../bfd/coff-go3.o}
-{$L ../bfd/srec.o}
-{$L ../bfd/tekhex.o}
-{$L ../bfd/ihex.o}
-{$L ../bfd/syms.o}
-{$L ../bfd/archive.o}
-{$L ../bfd/reloc.o}
-{$L ../bfd/linker.o}
-{$L ../bfd/coffgen.o}
-{$L ../bfd/cofflink.o}
-{$L ../libibert/hex.o}
-{$L ../bfd/hash.o}
-{$L ../bfd/stabs.o}
-{$ifdef GDB_V418}
-{$L ../readline/histexpa.o}
-{$L ../readline/histfile.o}
-{$L gdbarch.o}
-{$L tracepoi.o}
-{$L ax-gdb.o}
-{$L jv-lang.o}
-{$L ../readline/input.o}
-{$L ../readline/util.o}
-{$L ../readline/terminal.o}
-{$L ../readline/undo.o}
-{$L ../readline/macro.o}
-{$L ../readline/shell.o}
-{$L ../readline/nls.o}
-{$L ../readline/kill.o}
-{$L ../libibert/xstrerro.o}
-{$L ../libibert/objalloc.o}
-{$L dwarf2re.o}
-{$L ../bfd/coff-stg.o}
-{$L ../bfd/i386aout.o}
-{$L ../libibert/fnmatch.o}
-{$L ../readline/histsear.o}
-{$L ax-gener.o}
-{$L jv-exp_t.o}
-{$L jv-typep.o}
-{$L jv-valpr.o}
-{$L ../bfd/aout32.o}
-{$L ../bfd/stab-sym.o}
-{$endif GDB_V418}
-{
-  $Log$
-  Revision 1.2  2000-07-13 11:33:16  michael
-  + removed logs
- 
-}

+ 0 - 90
packages/gdbint/gdbver.pp

@@ -1,90 +0,0 @@
-{
-  $Id$
-
-  Program to detect the version of libgdb that will be
-  used for linking
-}
-program find_gdb_version;
-
-{$Linklib gdb}
-
-uses
-  strings;
-
-const
-{$ifdef unix}
-  ver_name = 'version';
-{$else not unix}
-  ver_name = '_version';
-{$endif}
-  { This variable should be change with
-    change in GDB CVS PM }
-  Current_cvs_version : longint = 502;
-  Max_version_length = 25;
-
-var
-  v5_version : array[0..0] of char;external name ver_name;
-  v4_version : pchar;external name ver_name;
-  version : pchar;
-  subver_str : string;
-  i, version_number,
-  subversion_number : longint;
-  error : word;
-  only_ver : boolean;
-
-begin
-  only_ver:=(Paramcount>0) and (ParamStr(1)='-n');
-  getmem(version,Max_version_length+1);
-  strlcopy(version,@v5_version,Max_version_length);
-  version[Max_version_length]:=#0;
-  if (version[0] in ['4','5','6','7','8','9']) and (version[1]='.') then
-    begin
-      if not only_ver then
-        Writeln('GDB version is ',pchar(@v5_version));
-      version_number:=ord(version[0])-ord('0');
-      i:=2;
-      subver_str:='';
-      while version[i] in ['0'..'9'] do
-        begin
-          subver_str:=subver_str+version[i];
-          inc(i);
-        end;
-      val(subver_str,subversion_number,error);
-      if (error=0) and (subversion_number>=0) and
-         (subversion_number<=99) then
-        version_number:=version_number*100+subversion_number;
-    end
-  else if (version[0]='2') and (version[1]='0') and
-          (version[2] in ['0'..'9']) and (version[3] in ['0'..'9']) then
-    begin
-      { CVS version from 2000 to 2099,
-        assume current_cvs_version  PM }
-      version_number:=Current_cvs_version;
-    end
-  else
-    begin
-      if not only_ver then
-        Writeln('GDB version is ',v4_version);
-      version_number:=ord(v4_version[0])-ord('0');
-    end;
-  freemem(version,Max_version_length+1);
-  if only_ver then
-    Write(version_number);
-  Halt(version_number);
-end.
-
-{
-  $Log$
-  Revision 1.5  2002-01-25 08:56:50  pierre
-   + add subversion for version output
-
-  Revision 1.4  2002/01/24 09:14:40  pierre
-   * adapt to GDB 5.1
-
-  Revision 1.3  2001/09/11 10:22:09  pierre
-   * Hack to allow to recognize CVS version as 5.01
-
-  Revision 1.2  2001/04/08 11:44:01  peter
-    * new file
-
-}

+ 0 - 977
packages/gdbint/libgdb/Makefile

@@ -1,977 +0,0 @@
-#
-# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/27]
-#
-default: all
-MAKEFILETARGETS=linux go32v2 win32 os2 freebsd beos netbsd amiga atari sunos qnx
-override PATH:=$(subst \,/,$(PATH))
-ifeq ($(findstring ;,$(PATH)),)
-inUnix=1
-SEARCHPATH:=$(filter-out .,$(subst :, ,$(PATH)))
-else
-SEARCHPATH:=$(subst ;, ,$(PATH))
-endif
-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 cygwin,$(MACHTYPE)),)
-inCygWin=1
-endif
-endif
-ifeq ($(OS_TARGET),freebsd)
-BSDhier=1
-endif
-ifeq ($(OS_TARGET),netbsd)
-BSDhier=1
-endif
-ifdef inUnix
-BATCHEXT=.sh
-else
-ifdef inOS2
-BATCHEXT=.cmd
-else
-BATCHEXT=.bat
-endif
-endif
-ifdef inUnix
-PATHSEP=/
-else
-PATHSEP:=$(subst /,\,/)
-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
-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=ppc386
-endif
-else
-override FPC=ppc386
-endif
-endif
-override FPC:=$(subst $(SRCEXEEXT),,$(FPC))
-override FPC:=$(subst \,/,$(FPC))$(SRCEXEEXT)
-ifndef FPC_VERSION
-FPC_VERSION:=$(shell $(FPC) -iV)
-endif
-export FPC FPC_VERSION
-ifeq ($(findstring 1.0.,$(FPC_VERSION)),)
-COMPILERINFO:=$(shell $(FPC) -iSP -iTP -iSO -iTO)
-ifndef CPU_SOURCE
-CPU_SOURCE:=$(word 1,$(COMPILERINFO))
-endif
-ifndef CPU_TARGET
-CPU_TARGET:=$(word 2,$(COMPILERINFO))
-endif
-ifndef OS_SOURCE
-OS_SOURCE:=$(word 3,$(COMPILERINFO))
-endif
-ifndef OS_TARGET
-OS_TARGET:=$(word 4,$(COMPILERINFO))
-endif
-else
-ifndef CPU_SOURCE
-CPU_SOURCE:=$(shell $(FPC) -iSP)
-endif
-ifndef CPU_TARGET
-CPU_TARGET:=$(shell $(FPC) -iTP)
-endif
-ifndef OS_SOURCE
-OS_SOURCE:=$(shell $(FPC) -iSO)
-endif
-ifndef OS_TARGET
-OS_TARGET:=$(shell $(FPC) -iTO)
-endif
-endif
-FULL_TARGET=$(CPU_TARGET)-$(OS_TARGET)
-FULL_SOURCE=$(CPU_SOURCE)-$(OS_SOURCE)
-ifneq ($(FULL_TARGET),$(FULL_SOURCE))
-CROSSCOMPILE=1
-endif
-ifeq ($(findstring makefile,$(MAKECMDGOALS)),)
-ifeq ($(findstring $(OS_TARGET),$(MAKEFILETARGETS)),)
-$(error The Makefile doesn't support target $(OS_TARGET), please run fpcmake first)
-endif
-endif
-export OS_TARGET OS_SOURCE CPU_TARGET CPU_SOURCE FULL_TARGET FULL_SOURCE 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=c:/pp
-endif
-endif
-endif
-endif
-ifndef CROSSDIR
-CROSSDIR:=$(FPCDIR)/cross/$(FULL_TARGET)
-endif
-ifndef CROSSTARGETDIR
-CROSSTARGETDIR=$(CROSSDIR)/$(FULL_TARGET)
-endif
-ifdef CROSSCOMPILE
-UNITSDIR:=$(wildcard $(CROSSTARGETDIR)/units)
-ifeq ($(UNITSDIR),)
-UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
-endif
-else
-UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
-endif
-PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages)
-ifdef REQUIRE_UNITSDIR
-override UNITSDIR+=$(REQUIRE_UNITSDIR)
-endif
-ifdef REQUIRE_PACKAGESDIR
-override PACKAGESDIR+=$(REQUIRE_PACKAGESDIR)
-endif
-ifdef ZIPINSTALL
-ifeq ($(OS_TARGET),linux)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_TARGET),freebsd)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_TARGET),netbsd)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_TARGET),sunos)
-UNIXINSTALLDIR=1
-endif
-else
-ifeq ($(OS_SOURCE),linux)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_SOURCE),freebsd)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_SOURCE),netbsd)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_TARGET),sunos)
-UNIXINSTALLDIR=1
-endif
-endif
-ifndef INSTALL_PREFIX
-ifdef PREFIX
-INSTALL_PREFIX=$(PREFIX)
-endif
-endif
-ifndef INSTALL_PREFIX
-ifdef UNIXINSTALLDIR
-INSTALL_PREFIX=/usr/local
-else
-ifdef INSTALL_FPCPACKAGE
-INSTALL_BASEDIR:=/pp
-else
-INSTALL_BASEDIR:=/$(PACKAGE_NAME)
-endif
-endif
-endif
-export INSTALL_PREFIX
-ifndef DIST_DESTDIR
-DIST_DESTDIR:=$(BASEDIR)
-endif
-export DIST_DESTDIR
-ifndef INSTALL_BASEDIR
-ifdef UNIXINSTALLDIR
-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 UNIXINSTALLDIR
-INSTALL_BINDIR:=$(INSTALL_PREFIX)/bin
-else
-INSTALL_BINDIR:=$(INSTALL_BASEDIR)/bin
-ifdef INSTALL_FPCPACKAGE
-INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(OS_TARGET)
-endif
-endif
-endif
-ifndef INSTALL_UNITDIR
-ifdef CROSSCOMPILE
-INSTALL_UNITDIR:=$(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/units
-else
-INSTALL_UNITDIR:=$(INSTALL_BASEDIR)/units/$(OS_TARGET)
-endif
-ifdef INSTALL_FPCPACKAGE
-ifdef PACKAGE_NAME
-INSTALL_UNITDIR:=$(INSTALL_UNITDIR)/$(PACKAGE_NAME)
-endif
-endif
-endif
-ifndef INSTALL_LIBDIR
-ifdef UNIXINSTALLDIR
-INSTALL_LIBDIR:=$(INSTALL_PREFIX)/lib
-else
-INSTALL_LIBDIR:=$(INSTALL_UNITDIR)
-endif
-endif
-ifndef INSTALL_SOURCEDIR
-ifdef UNIXINSTALLDIR
-ifdef INSTALL_FPCPACKAGE
-ifdef BSDhier
-INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/share/src/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-else
-INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/src/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-endif
-else
-ifdef BSDhier
-INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/share/src/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-else
-INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/src/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-endif
-endif
-else
-ifdef INSTALL_FPCPACKAGE
-INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source/$(PACKAGE_NAME)
-else
-INSTALL_SOURCEDIRL:=$(INSTALL_BASEDIR)/source
-endif
-endif
-endif
-ifndef INSTALL_DOCDIR
-ifdef UNIXINSTALLDIR
-ifdef INSTALL_FPCPACKAGE
-ifdef BSDhier
-INSTALL_DOCDIR:=$(INSTALL_PREFIX)/share/doc/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-else
-INSTALL_DOCDIR:=$(INSTALL_PREFIX)/doc/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-endif
-else
-ifdef BSDhier
-INSTALL_DOCDIR:=$(INSTALL_PREFIX)/share/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-else
-INSTALL_DOCDIR:=$(INSTALL_PREFIX)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-endif
-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 UNIXINSTALLDIR
-ifdef INSTALL_FPCPACKAGE
-ifdef BSDhier
-INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-else
-INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/fpc-$(FPC_VERSION)/examples/$(PACKAGE_NAME)
-endif
-else
-ifdef BSDhier
-INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-else
-INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-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
-ifdef CROSSCOMPILE
-ifndef CROSSBINDIR
-CROSSBINDIR:=$(wildcard $(CROSSTARGETDIR)/bin/$(FULL_SOURCE))
-ifeq ($(CROSSBINDIR),)
-CROSSBINDIR:=$(wildcard $(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/bin/$(FULL_SOURCE))
-endif
-endif
-else
-CROSSBINDIR=
-endif
-LOADEREXT=.as
-EXEEXT=.exe
-PPLEXT=.ppl
-PPUEXT=.ppu
-OEXT=.o
-ASMEXT=.s
-SMARTEXT=.sl
-STATICLIBEXT=.a
-SHAREDLIBEXT=.so
-STATICLIBPREFIX=libp
-RSTEXT=.rst
-FPCMADE=fpcmade
-ifeq ($(OS_TARGET),go32v1)
-PPUEXT=.pp1
-OEXT=.o1
-ASMEXT=.s1
-SMARTEXT=.sl1
-STATICLIBEXT=.a1
-SHAREDLIBEXT=.so1
-STATICLIBPREFIX=
-FPCMADE=fpcmade.v1
-PACKAGESUFFIX=v1
-endif
-ifeq ($(OS_TARGET),go32v2)
-STATICLIBPREFIX=
-FPCMADE=fpcmade.dos
-ZIPSUFFIX=go32
-endif
-ifeq ($(OS_TARGET),linux)
-EXEEXT=
-HASSHAREDLIB=1
-FPCMADE=fpcmade.lnx
-ZIPSUFFIX=linux
-endif
-ifeq ($(OS_TARGET),freebsd)
-EXEEXT=
-HASSHAREDLIB=1
-FPCMADE=fpcmade.freebsd
-ZIPSUFFIX=freebsd
-endif
-ifeq ($(OS_TARGET),netbsd)
-EXEEXT=
-HASSHAREDLIB=1
-FPCMADE=fpcmade.netbsd
-ZIPSUFFIX=netbsd
-endif
-ifeq ($(OS_TARGET),win32)
-PPUEXT=.ppw
-OEXT=.ow
-ASMEXT=.sw
-SMARTEXT=.slw
-STATICLIBEXT=.aw
-SHAREDLIBEXT=.dll
-FPCMADE=fpcmade.w32
-ZIPSUFFIX=w32
-endif
-ifeq ($(OS_TARGET),os2)
-PPUEXT=.ppo
-ASMEXT=.so2
-OEXT=.oo2
-AOUTEXT=.out
-SMARTEXT=.so
-STATICLIBEXT=.ao2
-SHAREDLIBEXT=.dll
-FPCMADE=fpcmade.os2
-ZIPSUFFIX=emx
-endif
-ifeq ($(OS_TARGET),amiga)
-EXEEXT=
-PPUEXT=.ppa
-ASMEXT=.asm
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-SHAREDLIBEXT=.library
-FPCMADE=fpcmade.amg
-endif
-ifeq ($(OS_TARGET),atari)
-PPUEXT=.ppt
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=.ttp
-FPCMADE=fpcmade.ata
-endif
-ifeq ($(OS_TARGET),beos)
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=
-FPCMADE=fpcmade.be
-ZIPSUFFIX=be
-endif
-ifeq ($(OS_TARGET),sunos)
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=
-FPCMADE=fpcmade.sun
-ZIPSUFFIX=sun
-endif
-ifeq ($(OS_TARGET),qnx)
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=
-FPCMADE=fpcmade.qnx
-ZIPSUFFIX=qnx
-endif
-ifndef ECHO
-ECHO:=$(strip $(wildcard $(addsuffix /gecho$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(ECHO),)
-ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(ECHO),)
-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=
-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=
-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=
-else
-CPPROG:=$(firstword $(CPPROG))
-endif
-endif
-export CPPROG
-ifndef RMPROG
-RMPROG:=$(strip $(wildcard $(addsuffix /rm$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(RMPROG),)
-RMPROG=
-else
-RMPROG:=$(firstword $(RMPROG))
-endif
-endif
-export RMPROG
-ifndef MVPROG
-MVPROG:=$(strip $(wildcard $(addsuffix /mv$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(MVPROG),)
-MVPROG=
-else
-MVPROG:=$(firstword $(MVPROG))
-endif
-endif
-export MVPROG
-ifndef ECHOREDIR
-ECHOREDIR:=$(subst /,$(PATHSEP),$(ECHO))
-endif
-ifndef COPY
-COPY:=$(CPPROG) -fp
-endif
-ifndef COPYTREE
-COPYTREE:=$(CPPROG) -rfp
-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=
-else
-PPUMOVE:=$(firstword $(PPUMOVE))
-endif
-endif
-export PPUMOVE
-ifndef FPCMAKE
-FPCMAKE:=$(strip $(wildcard $(addsuffix /fpcmake$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(FPCMAKE),)
-FPCMAKE=
-else
-FPCMAKE:=$(firstword $(FPCMAKE))
-endif
-endif
-export FPCMAKE
-ifndef ZIPPROG
-ZIPPROG:=$(strip $(wildcard $(addsuffix /zip$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(ZIPPROG),)
-ZIPPROG=
-else
-ZIPPROG:=$(firstword $(ZIPPROG))
-endif
-endif
-export ZIPPROG
-ifndef TARPROG
-TARPROG:=$(strip $(wildcard $(addsuffix /tar$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(TARPROG),)
-TARPROG=
-else
-TARPROG:=$(firstword $(TARPROG))
-endif
-endif
-export TARPROG
-ASNAME=as
-LDNAME=ld
-ARNAME=ar
-RCNAME=rc
-ifeq ($(OS_TARGET),win32)
-ASNAME=asw
-LDNAME=ldw
-ARNAME=arw
-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$(BATCHEXT)
-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=vI
-TAREXT=.tar.bz2
-else
-TAROPT=vz
-TAREXT=.tar.gz
-endif
-ifndef NOCPUDEF
-override FPCOPTDEF=$(CPU_TARGET)
-endif
-ifneq ($(OS_TARGET),$(OS_SOURCE))
-override FPCOPT+=-T$(OS_TARGET)
-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
-ifeq ($(CPU_TARGET),i386)
-FPCCPUOPT:=-OG2p3
-else
-FPCCPUOPT:=
-endif
-override FPCOPT+=-Xs $(FPCCPUOPT) -n
-override FPCOPTDEF+=RELEASE
-endif
-ifdef STRIP
-override FPCOPT+=-Xs
-endif
-ifdef OPTIMIZE
-ifeq ($(CPU_TARGET),i386)
-override FPCOPT+=-OG2p3
-endif
-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 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 COMPILER:=$(FPC) $(FPCOPT)
-ifeq (,$(findstring -s ,$(COMPILER)))
-EXECPPAS=
-else
-ifeq ($(OS_SOURCE),$(OS_TARGET))
-EXECPPAS:=@$(PPAS)
-endif
-endif
-ifdef TARGET_RSTS
-override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS))
-override CLEANRSTFILES+=$(RSTFILES)
-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)))
-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)
-fpc_distclean: clean
-ifdef COMPILER_UNITTARGETDIR
-TARGETDIRCLEAN=fpc_clean
-endif
-fpc_cleanall: $(CLEANTARGET) $(TARGETDIRCLEAN)
-ifdef CLEANEXEFILES
-	-$(DEL) $(CLEANEXEFILES)
-endif
-	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
-	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
-ifdef AOUTEXT
-	-$(DEL) *$(AOUTEXT)
-endif
-.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 Target.. $(FULL_SOURCE)
-	@$(ECHO)  Full Source.. $(FULL_TARGET)
-	@$(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)  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)  ZipPrefix............ $(ZIPPREFIX)
-	@$(ECHO)  ZipSuffix............ $(ZIPSUFFIX)
-	@$(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
-debug:
-smart:
-release:
-examples:
-shared:
-install:
-sourceinstall:
-exampleinstall:
-distinstall:
-zipinstall:
-zipsourceinstall:
-zipexampleinstall:
-zipdistinstall:
-clean:
-distclean:
-cleanall:
-info: fpc_info
-makefiles: fpc_makefiles
-.PHONY: debug smart release examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefiles
-ifneq ($(wildcard fpcmake.loc),)
-include fpcmake.loc
-endif
-all:
-	$(MAKE) -C $(OS_TARGET) all

+ 0 - 10
packages/gdbint/libgdb/Makefile.fpc

@@ -1,10 +0,0 @@
-#
-#   Makefile.fpc for Free Component Library
-#
-
-[sections]
-none=1
-
-[rules]
-all:
-        $(MAKE) -C $(OS_TARGET) all

+ 0 - 142
packages/gdbint/libgdb/go32v2/Makefile

@@ -1,142 +0,0 @@
-#
-# $Id$
-#
-# Makefile to create libgdb.a / libgdb.so
-#
-
-ifeq ($(GDB_SRC),)
-ifeq ($(OS),DJGPP)
-GDB_SRC=$(DJDIR)/gnu/gdb-4.18
-else
-ifeq ($(OS_TARGET),win32)
-GDB_SRC=d:/cygwin/cygwin-b20/gnu/gdb-4.18
-else
-GDB_SRC=/usr/src/gdb-4.17
-endif
-endif
-endif
-
-ifeq ($(GDB_OBJ),)
-GDB_OBJ=$(GDB_SRC)
-endif
-
-ifeq ($(OS)),DJGPP)
-OS_CFLAGS=-DMAINTENANCE_CMDS=0 -DHAVE_CONFIG_H -O2 -DHAVE_LONG_DOUBLE=1 \
-	  -DPRINTF_HAS_LONG_DOUBLE=1
-OS_FLAGS=
-MMALLOC_INC=
-MMALLOC_CFLAGS=-DNO_MMALLOC -DNO_MMALLOC_CHECK
-MMALLOC_LIB=
-MMALLOC_LIB_DIR=
-OS_FLAGS+=MMALLOC=$(MMALLOC) MMALLOC_CFLAGS="$(MMALLOC_CFLAGS)"
-CHECKS=check_echo check_awk
-EXCLUDE_REGEX=
-else
-OS_CFLAGS=-DMAINTENANCE_CMDS=1 -DHAVE_CONFIG_H -O2 -DNO_MMALLOC
-#MMALLOC=../mmalloc/libmmalloc.a
-#MMALLOC_INC=o_gdb/mmalloc s_gdb/mmalloc
-#CHECKS=
-#EXCLUDE_REGEX=| sed -e '/.*gnu-regex.*/d'
-endif
-
-MMALLOC_LIB=$(subst ..,$(GDB_OBJ),$(MMALLOC))
-MMALLOC_LIB_DIR=$(subst /libmmalloc.a,,$(MMALLOC_LIB))
-
-vpath %.a $(GDB_OBJ)/bfd $(GDB_OBJ)/intl $(GDB_OBJ)/libiberty $(GDB_OBJ)/opcodes $(GDB_OBJ)/readline $(MMALLOC_LIB_DIR)
-
-_INCS=o_gdb/gdb s_gdb/gdb s_gdb/include s_gdb/gdb/config \
-	o_gdb/bfd s_gdb/bfd \
-	o_gdb/opcodes s_gdb/opcodes \
-	o_gdb/intl s_gdb/intl \
-	o_gdb/readline s_gdb/readline \
-	o_gdb/libiberty s_gdb/libiberty \
-	$(MMALLOC_INC)
-
-INCS=$(subst s_gdb,$(GDB_SRC),$(subst o_gdb,$(GDB_OBJ),$(_INCS)))
-
-INC_PATH=$(addprefix -I,$(INCS))
-
-all:: libgdb.a
-
-libgdb.c: Makefile
-	echo '#include <defs.h>' > libgdb.c
-	echo '#include <breakpoint.h>' >> libgdb.c
-	echo '#include <symtab.h>' >> libgdb.c
-	echo '#include <symfile.h>' >> libgdb.c
-	echo '#include <objfiles.h>' >> libgdb.c
-	echo '#include <inferior.h>' >> libgdb.c
-	echo '#include <gnu-regex.h>' >> libgdb.c
-	echo '#include <expression.h>' >> libgdb.c
-	echo '#include <language.h>' >> libgdb.c
-	echo '#include <complaints.h>' >> libgdb.c
-	echo '#include <coff/internal.h>' >> libgdb.c
-	echo '#include <libcoff.h>' >> libgdb.c
-	echo '#include <ctype.h>' >> libgdb.c
-	echo '#include <string.h>' >> libgdb.c
-	echo '#include <buildsym.h>' >> libgdb.c
-	echo '#include <gdb-stabs.h>' >> libgdb.c
-	echo '#include <stabsread.h>' >> libgdb.c
-	echo '#include <gdbcmd.h>' >> libgdb.c
-	echo '#include <setjmp.h>' >> libgdb.c
-	echo '#include <demangle.h>' >> libgdb.c
-	echo '#include <annotate.h>' >> libgdb.c
-	echo '#include <top.h>' >> libgdb.c
-
-LIBGDB_FLAGS+=$(OS_FLAGS)
-CFLAGS+=$(OS_CFLAGS)
-
-$(GDB_OBJ)/bfd/bfd.h:
-	$(MAKE) -C $(dir $@) $(notdir $@)
-
-ifneq ($(LIBGDB_H),)
-libgdb.h: $(LIBGDB_H)
-	ln -sf $(LIBGDB_H) libgdb.h
-else
-libgdb.h: $(GDB_OBJ)/bfd/bfd.h libgdb.c
-	gcc -E -P $(INC_PATH) $(CFLAGS) $(MMALLOC_CFLAGS) libgdb.c \
-	  | sed -e '/^[ 	]*$$/d' > libgdb.h
-	gcc -E -P -dM $(INC_PATH) $(CFLAGS) $(MMALLOC_CFLAGS) libgdb.c \
-	  | sed -e '/^[ 	]*$$/d' >> libgdb.h
-endif
-
-gdb.t: $(GDB_OBJ)/gdb/libgdb-files
-	printf "%s\n" $(shell cat $<) | sed -n -e 's,^.*\.o,$(dir $<)&,p' $(EXCLUDE_REGEX) > $@
-
-%.t: %.a
-	ar t $< | sed -e 's,^.*\.o,$(dir $<)&,' > $@
-
-libbfd.t: $(GDB_OBJ)/bfd/libbfd.a
-libintl.t: $(GDB_OBJ)/intl/libintl.a
-libiberty.t: $(GDB_OBJ)/libiberty/libiberty.a
-libopcodes.t: $(GDB_OBJ)/opcodes/libopcodes.a
-libreadline.t: $(GDB_OBJ)/readline/libreadline.a
-libmmalloc.t: $(GDB_OBJ)/mmalloc/libmmalloc.a
-
-$(GDB_OBJ)/%.a:
-	$(MAKE) -C $(dir $@) CFLAGS="$(CFLAGS)" $(LIBGDB_FLAGS)
-
-$(GDB_OBJ)/gdb/libgdb-files:
-# this is needed, because the file is part of the src distrib, but
-# the object files not (at least in DJGPP)
-	rm -f $@
-	$(MAKE) -C $(dir $@) $(notdir $@) CFLAGS="$(CFLAGS)" $(LIBGDB_FLAGS)
-
-T_FILES= libbfd.t libiberty.t libintl.t libopcodes.t libreadline.t $(notdir $(subst .a,.t,$(MMALLOC_LIB))) gdb.t
-
-list: $(T_FILES)
-
-libgdb.a: $(CHECKS) list
-	rm -f libgdb.a
-# do not use any xmalloc.o, because it is defined in utils.o
-	ar rcs $@ $(shell cat $(T_FILES) | sed -e '/.*xmalloc.*/d')
-#        rm -f $(T_FILES)
-
-lib.zip : libgdb.a
-	zip lib libgdb.a
-	
-libgdb.so: $(CHECKS) list
-	rm -f libgdb.so
-# do not use any xmalloc.o, because it is defined in utils.o
-	ld -shared -o $@ $(shell cat $(T_FILES) | sed -e '/.*xmalloc.*/d')
-	rm -f $(T_FILES)
-

+ 0 - 142
packages/gdbint/libgdb/linux/Makefile

@@ -1,142 +0,0 @@
-#
-# $Id$
-#
-# Makefile to create libgdb.a / libgdb.so
-#
-
-ifeq ($(GDB_SRC),)
-ifeq ($(OS),DJGPP)
-GDB_SRC=$(DJDIR)/gnu/gdb-4.18
-else
-ifeq ($(OS_TARGET),win32)
-GDB_SRC=d:/cygwin/cygwin-b20/gnu/gdb-4.18
-else
-GDB_SRC=/usr/src/gdb-4.18
-endif
-endif
-endif
-
-ifeq ($(GDB_OBJ),)
-GDB_OBJ=$(GDB_SRC)
-endif
-
-ifeq ($(OS)),DJGPP)
-OS_CFLAGS=-DMAINTENANCE_CMDS=0 -DHAVE_CONFIG_H -O2 -DHAVE_LONG_DOUBLE=1 \
-	  -DPRINTF_HAS_LONG_DOUBLE=1
-OS_FLAGS=
-MMALLOC_INC=
-MMALLOC_CFLAGS=-DNO_MMALLOC -DNO_MMALLOC_CHECK
-MMALLOC_LIB=
-MMALLOC_LIB_DIR=
-OS_FLAGS+=MMALLOC=$(MMALLOC) MMALLOC_CFLAGS="$(MMALLOC_CFLAGS)"
-CHECKS=check_echo check_awk
-EXCLUDE_REGEX=
-else
-OS_CFLAGS=-DMAINTENANCE_CMDS=1 -DHAVE_CONFIG_H -O2 -DNO_MMALLOC
-#MMALLOC=../mmalloc/libmmalloc.a
-#MMALLOC_INC=o_gdb/mmalloc s_gdb/mmalloc
-#CHECKS=
-#EXCLUDE_REGEX=| sed -e '/.*gnu-regex.*/d'
-endif
-
-MMALLOC_LIB=$(subst ..,$(GDB_OBJ),$(MMALLOC))
-MMALLOC_LIB_DIR=$(subst /libmmalloc.a,,$(MMALLOC_LIB))
-
-vpath %.a $(GDB_OBJ)/bfd $(GDB_OBJ)/intl $(GDB_OBJ)/libiberty $(GDB_OBJ)/opcodes $(GDB_OBJ)/readline $(MMALLOC_LIB_DIR)
-
-_INCS=o_gdb/gdb s_gdb/gdb s_gdb/include s_gdb/gdb/config \
-	o_gdb/bfd s_gdb/bfd \
-	o_gdb/opcodes s_gdb/opcodes \
-	o_gdb/intl s_gdb/intl \
-	o_gdb/readline s_gdb/readline \
-	o_gdb/libiberty s_gdb/libiberty \
-	$(MMALLOC_INC)
-
-INCS=$(subst s_gdb,$(GDB_SRC),$(subst o_gdb,$(GDB_OBJ),$(_INCS)))
-
-INC_PATH=$(addprefix -I,$(INCS))
-
-all:: libgdb.a
-
-libgdb.c: Makefile
-	echo '#include <defs.h>' > libgdb.c
-	echo '#include <breakpoint.h>' >> libgdb.c
-	echo '#include <symtab.h>' >> libgdb.c
-	echo '#include <symfile.h>' >> libgdb.c
-	echo '#include <objfiles.h>' >> libgdb.c
-	echo '#include <inferior.h>' >> libgdb.c
-	echo '#include <gnu-regex.h>' >> libgdb.c
-	echo '#include <expression.h>' >> libgdb.c
-	echo '#include <language.h>' >> libgdb.c
-	echo '#include <complaints.h>' >> libgdb.c
-	echo '#include <coff/internal.h>' >> libgdb.c
-	echo '#include <libcoff.h>' >> libgdb.c
-	echo '#include <ctype.h>' >> libgdb.c
-	echo '#include <string.h>' >> libgdb.c
-	echo '#include <buildsym.h>' >> libgdb.c
-	echo '#include <gdb-stabs.h>' >> libgdb.c
-	echo '#include <stabsread.h>' >> libgdb.c
-	echo '#include <gdbcmd.h>' >> libgdb.c
-	echo '#include <setjmp.h>' >> libgdb.c
-	echo '#include <demangle.h>' >> libgdb.c
-	echo '#include <annotate.h>' >> libgdb.c
-	echo '#include <top.h>' >> libgdb.c
-
-LIBGDB_FLAGS+=$(OS_FLAGS)
-CFLAGS+=$(OS_CFLAGS)
-
-$(GDB_OBJ)/bfd/bfd.h:
-	$(MAKE) -C $(dir $@) $(notdir $@)
-
-ifneq ($(LIBGDB_H),)
-libgdb.h: $(LIBGDB_H)
-	ln -sf $(LIBGDB_H) libgdb.h
-else
-libgdb.h: $(GDB_OBJ)/bfd/bfd.h libgdb.c
-	gcc -E -P $(INC_PATH) $(CFLAGS) $(MMALLOC_CFLAGS) libgdb.c \
-	  | sed -e '/^[ 	]*$$/d' > libgdb.h
-	gcc -E -P -dM $(INC_PATH) $(CFLAGS) $(MMALLOC_CFLAGS) libgdb.c \
-	  | sed -e '/^[ 	]*$$/d' >> libgdb.h
-endif
-
-gdb.t: $(GDB_OBJ)/gdb/libgdb-files
-	printf "%s\n" $(shell cat $<) | sed -n -e 's,^.*\.o,$(dir $<)&,p' $(EXCLUDE_REGEX) > $@
-
-%.t: %.a
-	ar t $< | sed -e 's,^.*\.o,$(dir $<)&,' > $@
-
-libbfd.t: $(GDB_OBJ)/bfd/libbfd.a
-libintl.t: $(GDB_OBJ)/intl/libintl.a
-libiberty.t: $(GDB_OBJ)/libiberty/libiberty.a
-libopcodes.t: $(GDB_OBJ)/opcodes/libopcodes.a
-libreadline.t: $(GDB_OBJ)/readline/libreadline.a
-libmmalloc.t: $(GDB_OBJ)/mmalloc/libmmalloc.a
-
-$(GDB_OBJ)/%.a:
-	$(MAKE) -C $(dir $@) CFLAGS="$(CFLAGS)" $(LIBGDB_FLAGS)
-
-$(GDB_OBJ)/gdb/libgdb-files:
-# this is needed, because the file is part of the src distrib, but
-# the object files not (at least in DJGPP)
-	rm -f $@
-	$(MAKE) -C $(dir $@) $(notdir $@) CFLAGS="$(CFLAGS)" $(LIBGDB_FLAGS)
-
-T_FILES= libbfd.t libiberty.t libintl.t libopcodes.t libreadline.t $(notdir $(subst .a,.t,$(MMALLOC_LIB))) gdb.t
-
-list: $(T_FILES)
-
-libgdb.a: $(CHECKS) list
-	rm -f libgdb.a
-# do not use any xmalloc.o, because it is defined in utils.o
-	ar rcs $@ $(shell cat $(T_FILES) | sed -e '/.*xmalloc.*/d')
-	rm -f $(T_FILES)
-
-libgdb.so: $(CHECKS) list
-	rm -f libgdb.so
-# do not use any xmalloc.o, because it is defined in utils.o
-	ld -shared -o $@ $(shell cat $(T_FILES) | sed -e '/.*xmalloc.*/d')
-	rm -f $(T_FILES)
-
-lib.zip : libgdb.a
-	zip lib libgdb.a
-

+ 0 - 142
packages/gdbint/libgdb/netbsd/Makefile

@@ -1,142 +0,0 @@
-#
-# $Id$
-#
-# Makefile to create libgdb.a / libgdb.so
-#
-
-ifeq ($(GDB_SRC),)
-ifeq ($(OS),DJGPP)
-GDB_SRC=$(DJDIR)/gnu/gdb-4.18
-else
-ifeq ($(OS_TARGET),win32)
-GDB_SRC=d:/cygwin/cygwin-b20/gnu/gdb-4.18
-else
-GDB_SRC=/usr/src/gdb-4.18
-endif
-endif
-endif
-
-ifeq ($(GDB_OBJ),)
-GDB_OBJ=$(GDB_SRC)
-endif
-
-ifeq ($(OS)),DJGPP)
-OS_CFLAGS=-DMAINTENANCE_CMDS=0 -DHAVE_CONFIG_H -O2 -DHAVE_LONG_DOUBLE=1 \
-	  -DPRINTF_HAS_LONG_DOUBLE=1
-OS_FLAGS=
-MMALLOC_INC=
-MMALLOC_CFLAGS=-DNO_MMALLOC -DNO_MMALLOC_CHECK
-MMALLOC_LIB=
-MMALLOC_LIB_DIR=
-OS_FLAGS+=MMALLOC=$(MMALLOC) MMALLOC_CFLAGS="$(MMALLOC_CFLAGS)"
-CHECKS=check_echo check_awk
-EXCLUDE_REGEX=
-else
-OS_CFLAGS=-DMAINTENANCE_CMDS=1 -DHAVE_CONFIG_H -O2 -DNO_MMALLOC
-#MMALLOC=../mmalloc/libmmalloc.a
-#MMALLOC_INC=o_gdb/mmalloc s_gdb/mmalloc
-#CHECKS=
-#EXCLUDE_REGEX=| sed -e '/.*gnu-regex.*/d'
-endif
-
-MMALLOC_LIB=$(subst ..,$(GDB_OBJ),$(MMALLOC))
-MMALLOC_LIB_DIR=$(subst /libmmalloc.a,,$(MMALLOC_LIB))
-
-vpath %.a $(GDB_OBJ)/bfd $(GDB_OBJ)/intl $(GDB_OBJ)/libiberty $(GDB_OBJ)/opcodes $(GDB_OBJ)/readline $(MMALLOC_LIB_DIR)
-
-_INCS=o_gdb/gdb s_gdb/gdb s_gdb/include s_gdb/gdb/config \
-	o_gdb/bfd s_gdb/bfd \
-	o_gdb/opcodes s_gdb/opcodes \
-	o_gdb/intl s_gdb/intl \
-	o_gdb/readline s_gdb/readline \
-	o_gdb/libiberty s_gdb/libiberty \
-	$(MMALLOC_INC)
-
-INCS=$(subst s_gdb,$(GDB_SRC),$(subst o_gdb,$(GDB_OBJ),$(_INCS)))
-
-INC_PATH=$(addprefix -I,$(INCS))
-
-all:: libgdb.a
-
-libgdb.c: Makefile
-	echo '#include <defs.h>' > libgdb.c
-	echo '#include <breakpoint.h>' >> libgdb.c
-	echo '#include <symtab.h>' >> libgdb.c
-	echo '#include <symfile.h>' >> libgdb.c
-	echo '#include <objfiles.h>' >> libgdb.c
-	echo '#include <inferior.h>' >> libgdb.c
-	echo '#include <gnu-regex.h>' >> libgdb.c
-	echo '#include <expression.h>' >> libgdb.c
-	echo '#include <language.h>' >> libgdb.c
-	echo '#include <complaints.h>' >> libgdb.c
-	echo '#include <coff/internal.h>' >> libgdb.c
-	echo '#include <libcoff.h>' >> libgdb.c
-	echo '#include <ctype.h>' >> libgdb.c
-	echo '#include <string.h>' >> libgdb.c
-	echo '#include <buildsym.h>' >> libgdb.c
-	echo '#include <gdb-stabs.h>' >> libgdb.c
-	echo '#include <stabsread.h>' >> libgdb.c
-	echo '#include <gdbcmd.h>' >> libgdb.c
-	echo '#include <setjmp.h>' >> libgdb.c
-	echo '#include <demangle.h>' >> libgdb.c
-	echo '#include <annotate.h>' >> libgdb.c
-	echo '#include <top.h>' >> libgdb.c
-
-LIBGDB_FLAGS+=$(OS_FLAGS)
-CFLAGS+=$(OS_CFLAGS)
-
-$(GDB_OBJ)/bfd/bfd.h:
-	$(MAKE) -C $(dir $@) $(notdir $@)
-
-ifneq ($(LIBGDB_H),)
-libgdb.h: $(LIBGDB_H)
-	ln -sf $(LIBGDB_H) libgdb.h
-else
-libgdb.h: $(GDB_OBJ)/bfd/bfd.h libgdb.c
-	gcc -E -P $(INC_PATH) $(CFLAGS) $(MMALLOC_CFLAGS) libgdb.c \
-	  | sed -e '/^[ 	]*$$/d' > libgdb.h
-	gcc -E -P -dM $(INC_PATH) $(CFLAGS) $(MMALLOC_CFLAGS) libgdb.c \
-	  | sed -e '/^[ 	]*$$/d' >> libgdb.h
-endif
-
-gdb.t: $(GDB_OBJ)/gdb/libgdb-files
-	printf "%s\n" $(shell cat $<) | sed -n -e 's,^.*\.o,$(dir $<)&,p' $(EXCLUDE_REGEX) > $@
-
-%.t: %.a
-	ar t $< | sed -e 's,^.*\.o,$(dir $<)&,' > $@
-
-libbfd.t: $(GDB_OBJ)/bfd/libbfd.a
-libintl.t: $(GDB_OBJ)/intl/libintl.a
-libiberty.t: $(GDB_OBJ)/libiberty/libiberty.a
-libopcodes.t: $(GDB_OBJ)/opcodes/libopcodes.a
-libreadline.t: $(GDB_OBJ)/readline/libreadline.a
-libmmalloc.t: $(GDB_OBJ)/mmalloc/libmmalloc.a
-
-$(GDB_OBJ)/%.a:
-	$(MAKE) -C $(dir $@) CFLAGS="$(CFLAGS)" $(LIBGDB_FLAGS)
-
-$(GDB_OBJ)/gdb/libgdb-files:
-# this is needed, because the file is part of the src distrib, but
-# the object files not (at least in DJGPP)
-	rm -f $@
-	$(MAKE) -C $(dir $@) $(notdir $@) CFLAGS="$(CFLAGS)" $(LIBGDB_FLAGS)
-
-T_FILES= libbfd.t libiberty.t libintl.t libopcodes.t libreadline.t $(notdir $(subst .a,.t,$(MMALLOC_LIB))) gdb.t
-
-list: $(T_FILES)
-
-libgdb.a: $(CHECKS) list
-	rm -f libgdb.a
-# do not use any xmalloc.o, because it is defined in utils.o
-	ar rcs $@ $(shell cat $(T_FILES) | sed -e '/.*xmalloc.*/d')
-	rm -f $(T_FILES)
-
-libgdb.so: $(CHECKS) list
-	rm -f libgdb.so
-# do not use any xmalloc.o, because it is defined in utils.o
-	ld -shared -o $@ $(shell cat $(T_FILES) | sed -e '/.*xmalloc.*/d')
-	rm -f $(T_FILES)
-
-lib.zip : libgdb.a
-	zip lib libgdb.a
-

+ 0 - 142
packages/gdbint/libgdb/win32/Makefile

@@ -1,142 +0,0 @@
-#
-# $Id$
-#
-# Makefile to create libgdb.a / libgdb.so
-#
-
-ifeq ($(GDB_SRC),)
-ifeq ($(OS),DJGPP)
-GDB_SRC=$(DJDIR)/gnu/gdb-4.18
-else
-ifeq ($(OS_TARGET),win32)
-GDB_SRC=/cygwin/cygwin-b20/gnu/gdb/gdb-4.18
-else
-GDB_SRC=/usr/src/gdb-4.17
-endif
-endif
-endif
-
-ifeq ($(GDB_OBJ),)
-GDB_OBJ=$(GDB_SRC)
-endif
-
-ifeq ($(OS)),DJGPP)
-OS_CFLAGS=-DMAINTENANCE_CMDS=0 -DHAVE_CONFIG_H -O2 -DHAVE_LONG_DOUBLE=1 \
-	  -DPRINTF_HAS_LONG_DOUBLE=1
-OS_FLAGS=
-MMALLOC_INC=
-MMALLOC_CFLAGS=-DNO_MMALLOC -DNO_MMALLOC_CHECK
-MMALLOC_LIB=
-MMALLOC_LIB_DIR=
-OS_FLAGS+=MMALLOC=$(MMALLOC) MMALLOC_CFLAGS="$(MMALLOC_CFLAGS)"
-CHECKS=check_echo check_awk
-EXCLUDE_REGEX=
-else
-OS_CFLAGS=-DMAINTENANCE_CMDS=1 -DHAVE_CONFIG_H -O2 -DNO_MMALLOC
-#MMALLOC=../mmalloc/libmmalloc.a
-#MMALLOC_INC=o_gdb/mmalloc s_gdb/mmalloc
-#CHECKS=
-#EXCLUDE_REGEX=| sed -e '/.*gnu-regex.*/d'
-endif
-
-MMALLOC_LIB=$(subst ..,$(GDB_OBJ),$(MMALLOC))
-MMALLOC_LIB_DIR=$(subst /libmmalloc.a,,$(MMALLOC_LIB))
-
-vpath %.a $(GDB_OBJ)/bfd $(GDB_OBJ)/intl $(GDB_OBJ)/libiberty $(GDB_OBJ)/opcodes $(GDB_OBJ)/readline $(MMALLOC_LIB_DIR)
-
-_INCS=o_gdb/gdb s_gdb/gdb s_gdb/include s_gdb/gdb/config \
-	o_gdb/bfd s_gdb/bfd \
-	o_gdb/opcodes s_gdb/opcodes \
-	o_gdb/intl s_gdb/intl \
-	o_gdb/readline s_gdb/readline \
-	o_gdb/libiberty s_gdb/libiberty \
-	$(MMALLOC_INC)
-
-INCS=$(subst s_gdb,$(GDB_SRC),$(subst o_gdb,$(GDB_OBJ),$(_INCS)))
-
-INC_PATH=$(addprefix -I,$(INCS))
-
-all:: libgdb.a
-
-libgdb.c: Makefile
-	echo '#include <defs.h>' > libgdb.c
-	echo '#include <breakpoint.h>' >> libgdb.c
-	echo '#include <symtab.h>' >> libgdb.c
-	echo '#include <symfile.h>' >> libgdb.c
-	echo '#include <objfiles.h>' >> libgdb.c
-	echo '#include <inferior.h>' >> libgdb.c
-	echo '#include <gnu-regex.h>' >> libgdb.c
-	echo '#include <expression.h>' >> libgdb.c
-	echo '#include <language.h>' >> libgdb.c
-	echo '#include <complaints.h>' >> libgdb.c
-	echo '#include <coff/internal.h>' >> libgdb.c
-	echo '#include <libcoff.h>' >> libgdb.c
-	echo '#include <ctype.h>' >> libgdb.c
-	echo '#include <string.h>' >> libgdb.c
-	echo '#include <buildsym.h>' >> libgdb.c
-	echo '#include <gdb-stabs.h>' >> libgdb.c
-	echo '#include <stabsread.h>' >> libgdb.c
-	echo '#include <gdbcmd.h>' >> libgdb.c
-	echo '#include <setjmp.h>' >> libgdb.c
-	echo '#include <demangle.h>' >> libgdb.c
-	echo '#include <annotate.h>' >> libgdb.c
-	echo '#include <top.h>' >> libgdb.c
-
-LIBGDB_FLAGS+=$(OS_FLAGS)
-CFLAGS+=$(OS_CFLAGS)
-
-$(GDB_OBJ)/bfd/bfd.h:
-	$(MAKE) -C $(dir $@) $(notdir $@)
-
-ifneq ($(LIBGDB_H),)
-libgdb.h: $(LIBGDB_H)
-	ln -sf $(LIBGDB_H) libgdb.h
-else
-libgdb.h: $(GDB_OBJ)/bfd/bfd.h libgdb.c
-	gcc -E -P $(INC_PATH) $(CFLAGS) $(MMALLOC_CFLAGS) libgdb.c \
-	  | sed -e '/^[ 	]*$$/d' > libgdb.h
-	gcc -E -P -dM $(INC_PATH) $(CFLAGS) $(MMALLOC_CFLAGS) libgdb.c \
-	  | sed -e '/^[ 	]*$$/d' >> libgdb.h
-endif
-
-gdb.t: $(GDB_OBJ)/gdb/libgdb-files
-	printf "%s\n" $(shell cat $<) | sed -n -e 's,^.*\.o,$(dir $<)&,p' $(EXCLUDE_REGEX) > $@
-
-%.t: %.a
-	ar t $< | sed -e 's,^.*\.o,$(dir $<)&,' > $@
-
-libbfd.t: $(GDB_OBJ)/bfd/libbfd.a
-libintl.t: $(GDB_OBJ)/intl/libintl.a
-libiberty.t: $(GDB_OBJ)/libiberty/libiberty.a
-libopcodes.t: $(GDB_OBJ)/opcodes/libopcodes.a
-libreadline.t: $(GDB_OBJ)/readline/libreadline.a
-libmmalloc.t: $(GDB_OBJ)/mmalloc/libmmalloc.a
-
-$(GDB_OBJ)/%.a:
-	$(MAKE) -C $(dir $@) CFLAGS="$(CFLAGS)" $(LIBGDB_FLAGS)
-
-$(GDB_OBJ)/gdb/libgdb-files:
-# this is needed, because the file is part of the src distrib, but
-# the object files not (at least in DJGPP)
-	rm -f $@
-	$(MAKE) -C $(dir $@) $(notdir $@) CFLAGS="$(CFLAGS)" $(LIBGDB_FLAGS)
-
-T_FILES= libbfd.t libiberty.t libintl.t libopcodes.t libreadline.t $(notdir $(subst .a,.t,$(MMALLOC_LIB))) gdb.t
-
-list: $(T_FILES)
-
-libgdb.a: $(CHECKS) list
-	rm -f libgdb.a
-# do not use any xmalloc.o, because it is defined in utils.o
-	ar rcs $@ $(shell cat $(T_FILES) | sed -e '/.*xmalloc.*/d')
-#        rm -f $(T_FILES)
-
-lib.zip : libgdb.a
-	zip lib libgdb.a
-	
-libgdb.so: $(CHECKS) list
-	rm -f libgdb.so
-# do not use any xmalloc.o, because it is defined in utils.o
-	ld -shared -o $@ $(shell cat $(T_FILES) | sed -e '/.*xmalloc.*/d')
-	rm -f $(T_FILES)
-

+ 0 - 84
packages/gdbint/symify.pp

@@ -1,84 +0,0 @@
-{
-    $Id$
-    Copyright (c) 1998 by Peter Vreman
-
-    Translate backtrace addresses into file and line info
-
-    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.
-
- **********************************************************************}
-program symify;
-uses GDBInt;
-
-var
-  gdb : tgdbinterface;
-
-
-procedure processlog(const fn:string);
-var
-  t    : text;
-  hs,s : string;
-  code : word;
-  i,
-  addr : longint;
-  sym  : tsyminfo;
-begin
-  assign(t,fn);
-  {$I-}
-   reset(t);
-  {$I+}
-  if ioresult<>0 then
-   exit;
-  while not eof(t) do
-   begin
-     readln(t,s);
-     i:=pos('0x',s);
-     if i=3 then
-      begin
-        hs:='$'+Copy(s,5,8);
-        Val(hs,addr,code);
-        if code=0 then
-         begin
-           gdb.GetAddrSymInfo(addr,sym);
-           Write(Copy(s,1,12));
-           if assigned(sym.funcname) then
-             write(' in ',sym.funcname,'+',sym.offset);
-           if assigned(sym.fname) then
-             writeln(' ',sym.fname,':',sym.line)
-           else
-             writeln;
-         end
-        else
-         writeln(s);
-      end
-     else
-      writeln(s);
-   end;
-  close(t);
-end;
-
-
-begin
-  if paramcount<2 then
-   begin
-     writeln('usage: symify <log> <file>');
-     halt(1);
-   end;
-  gdb.init;
-  writeln('loading ',paramstr(2));
-  gdb.gdb_command('file '+paramstr(2));
-  writeln('parsing ',paramstr(1));
-  processlog(paramstr(1));
-  gdb.done;
-end.
-{
-  $Log$
-  Revision 1.2  2000-07-13 11:33:16  michael
-  + removed logs
- 
-}

+ 0 - 61
packages/gdbint/testgdb.pp

@@ -1,61 +0,0 @@
-{
-    $Id$
-    Copyright (c) 1998 by Peter Vreman
-
-    Small example program to the GDB
-
-    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.
-
- **********************************************************************}
-program testgdb;
-uses gdbcon;
-var
-  last,s,parafile : string;
-  gdb : tgdbcontroller;
-begin
-  gdb.init;
-  if paramcount=1 then
-    parafile:=paramstr(1)
-  else
-    parafile:='test';
-  gdb.loadfile(parafile);
-  Writeln('Welcome to the pascal GDB...');
-  Writeln('Type "q" to exit...');
-  last:='';
-  repeat
-    write('>');
-    readln(s);
-    if (s='a') then
-     gdb.starttrace
-    else
-     if (s='s') then
-      gdb.tracestep
-    else
-     if (s='n') then
-      gdb.tracenext
-    else
-     if (s='q') then
-      break
-    else
-     begin
-       if s='' then
-         s:=last;
-       GDB.Command(s);
-       GDB.WriteErrorBuf;
-       GDB.WriteOutputBuf;
-       last:=s;
-     end;
-  until false;
-  Writeln('End of pascal GDB...');
-end.
-{
-  $Log$
-  Revision 1.2  2000-07-13 11:33:16  michael
-  + removed logs
- 
-}

+ 0 - 1236
packages/gdbm/Makefile

@@ -1,1236 +0,0 @@
-#
-# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/27]
-#
-default: all
-MAKEFILETARGETS=linux go32v2 win32 os2 freebsd beos netbsd amiga atari sunos qnx
-override PATH:=$(subst \,/,$(PATH))
-ifeq ($(findstring ;,$(PATH)),)
-inUnix=1
-SEARCHPATH:=$(filter-out .,$(subst :, ,$(PATH)))
-else
-SEARCHPATH:=$(subst ;, ,$(PATH))
-endif
-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 cygwin,$(MACHTYPE)),)
-inCygWin=1
-endif
-endif
-ifeq ($(OS_TARGET),freebsd)
-BSDhier=1
-endif
-ifeq ($(OS_TARGET),netbsd)
-BSDhier=1
-endif
-ifdef inUnix
-BATCHEXT=.sh
-else
-ifdef inOS2
-BATCHEXT=.cmd
-else
-BATCHEXT=.bat
-endif
-endif
-ifdef inUnix
-PATHSEP=/
-else
-PATHSEP:=$(subst /,\,/)
-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
-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=ppc386
-endif
-else
-override FPC=ppc386
-endif
-endif
-override FPC:=$(subst $(SRCEXEEXT),,$(FPC))
-override FPC:=$(subst \,/,$(FPC))$(SRCEXEEXT)
-ifndef FPC_VERSION
-FPC_VERSION:=$(shell $(FPC) -iV)
-endif
-export FPC FPC_VERSION
-ifeq ($(findstring 1.0.,$(FPC_VERSION)),)
-COMPILERINFO:=$(shell $(FPC) -iSP -iTP -iSO -iTO)
-ifndef CPU_SOURCE
-CPU_SOURCE:=$(word 1,$(COMPILERINFO))
-endif
-ifndef CPU_TARGET
-CPU_TARGET:=$(word 2,$(COMPILERINFO))
-endif
-ifndef OS_SOURCE
-OS_SOURCE:=$(word 3,$(COMPILERINFO))
-endif
-ifndef OS_TARGET
-OS_TARGET:=$(word 4,$(COMPILERINFO))
-endif
-else
-ifndef CPU_SOURCE
-CPU_SOURCE:=$(shell $(FPC) -iSP)
-endif
-ifndef CPU_TARGET
-CPU_TARGET:=$(shell $(FPC) -iTP)
-endif
-ifndef OS_SOURCE
-OS_SOURCE:=$(shell $(FPC) -iSO)
-endif
-ifndef OS_TARGET
-OS_TARGET:=$(shell $(FPC) -iTO)
-endif
-endif
-FULL_TARGET=$(CPU_TARGET)-$(OS_TARGET)
-FULL_SOURCE=$(CPU_SOURCE)-$(OS_SOURCE)
-ifneq ($(FULL_TARGET),$(FULL_SOURCE))
-CROSSCOMPILE=1
-endif
-ifeq ($(findstring makefile,$(MAKECMDGOALS)),)
-ifeq ($(findstring $(OS_TARGET),$(MAKEFILETARGETS)),)
-$(error The Makefile doesn't support target $(OS_TARGET), please run fpcmake first)
-endif
-endif
-export OS_TARGET OS_SOURCE CPU_TARGET CPU_SOURCE FULL_TARGET FULL_SOURCE 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=c:/pp
-endif
-endif
-endif
-endif
-ifndef CROSSDIR
-CROSSDIR:=$(FPCDIR)/cross/$(FULL_TARGET)
-endif
-ifndef CROSSTARGETDIR
-CROSSTARGETDIR=$(CROSSDIR)/$(FULL_TARGET)
-endif
-ifdef CROSSCOMPILE
-UNITSDIR:=$(wildcard $(CROSSTARGETDIR)/units)
-ifeq ($(UNITSDIR),)
-UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
-endif
-else
-UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
-endif
-PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages)
-override PACKAGE_NAME=gdbm
-override PACKAGE_VERSION=1.0.5
-override TARGET_UNITS+=gdbm
-override TARGET_EXAMPLES+=testgdbm testgdbm2
-override INSTALL_FPCPACKAGE=y
-ifdef REQUIRE_UNITSDIR
-override UNITSDIR+=$(REQUIRE_UNITSDIR)
-endif
-ifdef REQUIRE_PACKAGESDIR
-override PACKAGESDIR+=$(REQUIRE_PACKAGESDIR)
-endif
-ifdef ZIPINSTALL
-ifeq ($(OS_TARGET),linux)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_TARGET),freebsd)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_TARGET),netbsd)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_TARGET),sunos)
-UNIXINSTALLDIR=1
-endif
-else
-ifeq ($(OS_SOURCE),linux)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_SOURCE),freebsd)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_SOURCE),netbsd)
-UNIXINSTALLDIR=1
-endif
-ifeq ($(OS_TARGET),sunos)
-UNIXINSTALLDIR=1
-endif
-endif
-ifndef INSTALL_PREFIX
-ifdef PREFIX
-INSTALL_PREFIX=$(PREFIX)
-endif
-endif
-ifndef INSTALL_PREFIX
-ifdef UNIXINSTALLDIR
-INSTALL_PREFIX=/usr/local
-else
-ifdef INSTALL_FPCPACKAGE
-INSTALL_BASEDIR:=/pp
-else
-INSTALL_BASEDIR:=/$(PACKAGE_NAME)
-endif
-endif
-endif
-export INSTALL_PREFIX
-ifndef DIST_DESTDIR
-DIST_DESTDIR:=$(BASEDIR)
-endif
-export DIST_DESTDIR
-ifndef INSTALL_BASEDIR
-ifdef UNIXINSTALLDIR
-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 UNIXINSTALLDIR
-INSTALL_BINDIR:=$(INSTALL_PREFIX)/bin
-else
-INSTALL_BINDIR:=$(INSTALL_BASEDIR)/bin
-ifdef INSTALL_FPCPACKAGE
-INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(OS_TARGET)
-endif
-endif
-endif
-ifndef INSTALL_UNITDIR
-ifdef CROSSCOMPILE
-INSTALL_UNITDIR:=$(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/units
-else
-INSTALL_UNITDIR:=$(INSTALL_BASEDIR)/units/$(OS_TARGET)
-endif
-ifdef INSTALL_FPCPACKAGE
-ifdef PACKAGE_NAME
-INSTALL_UNITDIR:=$(INSTALL_UNITDIR)/$(PACKAGE_NAME)
-endif
-endif
-endif
-ifndef INSTALL_LIBDIR
-ifdef UNIXINSTALLDIR
-INSTALL_LIBDIR:=$(INSTALL_PREFIX)/lib
-else
-INSTALL_LIBDIR:=$(INSTALL_UNITDIR)
-endif
-endif
-ifndef INSTALL_SOURCEDIR
-ifdef UNIXINSTALLDIR
-ifdef INSTALL_FPCPACKAGE
-ifdef BSDhier
-INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/share/src/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-else
-INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/src/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-endif
-else
-ifdef BSDhier
-INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/share/src/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-else
-INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/src/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-endif
-endif
-else
-ifdef INSTALL_FPCPACKAGE
-INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source/$(PACKAGE_NAME)
-else
-INSTALL_SOURCEDIRL:=$(INSTALL_BASEDIR)/source
-endif
-endif
-endif
-ifndef INSTALL_DOCDIR
-ifdef UNIXINSTALLDIR
-ifdef INSTALL_FPCPACKAGE
-ifdef BSDhier
-INSTALL_DOCDIR:=$(INSTALL_PREFIX)/share/doc/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-else
-INSTALL_DOCDIR:=$(INSTALL_PREFIX)/doc/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-endif
-else
-ifdef BSDhier
-INSTALL_DOCDIR:=$(INSTALL_PREFIX)/share/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-else
-INSTALL_DOCDIR:=$(INSTALL_PREFIX)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-endif
-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 UNIXINSTALLDIR
-ifdef INSTALL_FPCPACKAGE
-ifdef BSDhier
-INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
-else
-INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/fpc-$(FPC_VERSION)/examples/$(PACKAGE_NAME)
-endif
-else
-ifdef BSDhier
-INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-else
-INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
-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
-ifdef CROSSCOMPILE
-ifndef CROSSBINDIR
-CROSSBINDIR:=$(wildcard $(CROSSTARGETDIR)/bin/$(FULL_SOURCE))
-ifeq ($(CROSSBINDIR),)
-CROSSBINDIR:=$(wildcard $(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/bin/$(FULL_SOURCE))
-endif
-endif
-else
-CROSSBINDIR=
-endif
-LOADEREXT=.as
-EXEEXT=.exe
-PPLEXT=.ppl
-PPUEXT=.ppu
-OEXT=.o
-ASMEXT=.s
-SMARTEXT=.sl
-STATICLIBEXT=.a
-SHAREDLIBEXT=.so
-STATICLIBPREFIX=libp
-RSTEXT=.rst
-FPCMADE=fpcmade
-ifeq ($(OS_TARGET),go32v1)
-PPUEXT=.pp1
-OEXT=.o1
-ASMEXT=.s1
-SMARTEXT=.sl1
-STATICLIBEXT=.a1
-SHAREDLIBEXT=.so1
-STATICLIBPREFIX=
-FPCMADE=fpcmade.v1
-PACKAGESUFFIX=v1
-endif
-ifeq ($(OS_TARGET),go32v2)
-STATICLIBPREFIX=
-FPCMADE=fpcmade.dos
-ZIPSUFFIX=go32
-endif
-ifeq ($(OS_TARGET),linux)
-EXEEXT=
-HASSHAREDLIB=1
-FPCMADE=fpcmade.lnx
-ZIPSUFFIX=linux
-endif
-ifeq ($(OS_TARGET),freebsd)
-EXEEXT=
-HASSHAREDLIB=1
-FPCMADE=fpcmade.freebsd
-ZIPSUFFIX=freebsd
-endif
-ifeq ($(OS_TARGET),netbsd)
-EXEEXT=
-HASSHAREDLIB=1
-FPCMADE=fpcmade.netbsd
-ZIPSUFFIX=netbsd
-endif
-ifeq ($(OS_TARGET),win32)
-PPUEXT=.ppw
-OEXT=.ow
-ASMEXT=.sw
-SMARTEXT=.slw
-STATICLIBEXT=.aw
-SHAREDLIBEXT=.dll
-FPCMADE=fpcmade.w32
-ZIPSUFFIX=w32
-endif
-ifeq ($(OS_TARGET),os2)
-PPUEXT=.ppo
-ASMEXT=.so2
-OEXT=.oo2
-AOUTEXT=.out
-SMARTEXT=.so
-STATICLIBEXT=.ao2
-SHAREDLIBEXT=.dll
-FPCMADE=fpcmade.os2
-ZIPSUFFIX=emx
-endif
-ifeq ($(OS_TARGET),amiga)
-EXEEXT=
-PPUEXT=.ppa
-ASMEXT=.asm
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-SHAREDLIBEXT=.library
-FPCMADE=fpcmade.amg
-endif
-ifeq ($(OS_TARGET),atari)
-PPUEXT=.ppt
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=.ttp
-FPCMADE=fpcmade.ata
-endif
-ifeq ($(OS_TARGET),beos)
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=
-FPCMADE=fpcmade.be
-ZIPSUFFIX=be
-endif
-ifeq ($(OS_TARGET),sunos)
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=
-FPCMADE=fpcmade.sun
-ZIPSUFFIX=sun
-endif
-ifeq ($(OS_TARGET),qnx)
-PPUEXT=.ppu
-ASMEXT=.s
-OEXT=.o
-SMARTEXT=.sl
-STATICLIBEXT=.a
-EXEEXT=
-FPCMADE=fpcmade.qnx
-ZIPSUFFIX=qnx
-endif
-ifndef ECHO
-ECHO:=$(strip $(wildcard $(addsuffix /gecho$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(ECHO),)
-ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(ECHO),)
-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=
-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=
-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=
-else
-CPPROG:=$(firstword $(CPPROG))
-endif
-endif
-export CPPROG
-ifndef RMPROG
-RMPROG:=$(strip $(wildcard $(addsuffix /rm$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(RMPROG),)
-RMPROG=
-else
-RMPROG:=$(firstword $(RMPROG))
-endif
-endif
-export RMPROG
-ifndef MVPROG
-MVPROG:=$(strip $(wildcard $(addsuffix /mv$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(MVPROG),)
-MVPROG=
-else
-MVPROG:=$(firstword $(MVPROG))
-endif
-endif
-export MVPROG
-ifndef ECHOREDIR
-ECHOREDIR:=$(subst /,$(PATHSEP),$(ECHO))
-endif
-ifndef COPY
-COPY:=$(CPPROG) -fp
-endif
-ifndef COPYTREE
-COPYTREE:=$(CPPROG) -rfp
-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=
-else
-PPUMOVE:=$(firstword $(PPUMOVE))
-endif
-endif
-export PPUMOVE
-ifndef FPCMAKE
-FPCMAKE:=$(strip $(wildcard $(addsuffix /fpcmake$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(FPCMAKE),)
-FPCMAKE=
-else
-FPCMAKE:=$(firstword $(FPCMAKE))
-endif
-endif
-export FPCMAKE
-ifndef ZIPPROG
-ZIPPROG:=$(strip $(wildcard $(addsuffix /zip$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(ZIPPROG),)
-ZIPPROG=
-else
-ZIPPROG:=$(firstword $(ZIPPROG))
-endif
-endif
-export ZIPPROG
-ifndef TARPROG
-TARPROG:=$(strip $(wildcard $(addsuffix /tar$(SRCEXEEXT),$(SEARCHPATH))))
-ifeq ($(TARPROG),)
-TARPROG=
-else
-TARPROG:=$(firstword $(TARPROG))
-endif
-endif
-export TARPROG
-ASNAME=as
-LDNAME=ld
-ARNAME=ar
-RCNAME=rc
-ifeq ($(OS_TARGET),win32)
-ASNAME=asw
-LDNAME=ldw
-ARNAME=arw
-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$(BATCHEXT)
-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=vI
-TAREXT=.tar.bz2
-else
-TAROPT=vz
-TAREXT=.tar.gz
-endif
-override REQUIRE_PACKAGES=rtl 
-ifeq ($(OS_TARGET),linux)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(OS_TARGET),go32v2)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(OS_TARGET),win32)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(OS_TARGET),os2)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(OS_TARGET),freebsd)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(OS_TARGET),beos)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(OS_TARGET),netbsd)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(OS_TARGET),amiga)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(OS_TARGET),atari)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(OS_TARGET),sunos)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(OS_TARGET),qnx)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifdef REQUIRE_PACKAGES_RTL
-PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
-ifneq ($(PACKAGEDIR_RTL),)
-ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
-UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
-else
-UNITDIR_RTL=$(PACKAGEDIR_RTL)
-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
-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
-ifeq ($(CPU_TARGET),i386)
-FPCCPUOPT:=-OG2p3
-else
-FPCCPUOPT:=
-endif
-override FPCOPT+=-Xs $(FPCCPUOPT) -n
-override FPCOPTDEF+=RELEASE
-endif
-ifdef STRIP
-override FPCOPT+=-Xs
-endif
-ifdef OPTIMIZE
-ifeq ($(CPU_TARGET),i386)
-override FPCOPT+=-OG2p3
-endif
-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 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 COMPILER:=$(FPC) $(FPCOPT)
-ifeq (,$(findstring -s ,$(COMPILER)))
-EXECPPAS=
-else
-ifeq ($(OS_SOURCE),$(OS_TARGET))
-EXECPPAS:=@$(PPAS)
-endif
-endif
-.PHONY: fpc_units
-ifdef 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: $(UNITPPUFILES)
-ifdef TARGET_RSTS
-override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS))
-override CLEANRSTFILES+=$(RSTFILES)
-endif
-.PHONY: fpc_examples
-ifdef TARGET_EXAMPLES
-HASEXAMPLES=1
-override EXAMPLESOURCEFILES:=$(wildcard $(addsuffix .pp,$(TARGET_EXAMPLES)) $(addsuffix .pas,$(TARGET_EXAMPLES)))
-override EXAMPLEFILES:=$(addsuffix $(EXEEXT),$(TARGET_EXAMPLES))
-override EXAMPLEOFILES:=$(addsuffix $(OEXT),$(TARGET_EXAMPLES)) $(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_EXAMPLES)))
-override CLEANEXEFILES+=$(EXAMPLEFILES) $(EXAMPLEOFILES)
-ifeq ($(OS_TARGET),os2)
-override CLEANEXEFILES+=$(addsuffix $(AOUTEXT),$(TARGET_EXAMPLES))
-endif
-endif
-ifdef TARGET_EXAMPLEDIRS
-HASEXAMPLES=1
-endif
-fpc_examples: all $(EXAMPLEFILES) $(addsuffix _all,$(TARGET_EXAMPLEDIRS))
-.PHONY: fpc_all fpc_smart fpc_debug fpc_release
-$(FPCMADE): $(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 .pp .rc .res
-%$(PPUEXT): %.pp
-	$(COMPILER) $<
-	$(EXECPPAS)
-%$(PPUEXT): %.pas
-	$(COMPILER) $<
-	$(EXECPPAS)
-%$(EXEEXT): %.pp
-	$(COMPILER) $<
-	$(EXECPPAS)
-%$(EXEEXT): %.pas
-	$(COMPILER) $<
-	$(EXECPPAS)
-%.res: %.rc
-	windres -i $< -o $@
-vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
-vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
-vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
-.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),$(INSTALLPPUFILES))
-endif
-ifdef INSTALLPPUFILES
-override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
-override INSTALLPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPUFILES))
-override INSTALLPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPULINKFILES)))
-override INSTALL_CREATEPACKAGEFPC=1
-endif
-ifdef INSTALLEXEFILES
-override INSTALLEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(INSTALLEXEFILES))
-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$(OS_TARGET) Makefile.fpc
-	$(MKDIR) $(INSTALL_UNITDIR)
-	$(INSTALL) Package.fpc $(INSTALL_UNITDIR)
-endif
-endif
-endif
-endif
-ifdef INSTALLPPUFILES
-	$(MKDIR) $(INSTALL_UNITDIR)
-	$(INSTALL) $(INSTALLPPUFILES) $(INSTALL_UNITDIR)
-ifneq ($(INSTALLPPULINKFILES),)
-	$(INSTALL) $(INSTALLPPULINKFILES) $(INSTALL_UNITDIR)
-endif
-ifneq ($(wildcard $(LIB_FULLNAME)),)
-	$(MKDIR) $(INSTALL_LIBDIR)
-	$(INSTALL) $(LIB_FULLNAME) $(INSTALL_LIBDIR)
-ifdef inUnix
-	ln -sf $(LIB_FULLNAME) $(INSTALL_LIBDIR)/$(LIB_NAME)
-endif
-endif
-endif
-ifdef INSTALL_FILES
-	$(MKDIR) $(INSTALL_DATADIR)
-	$(INSTALL) $(INSTALL_FILES) $(INSTALL_DATADIR)
-endif
-fpc_sourceinstall: distclean
-	$(MKDIR) $(INSTALL_SOURCEDIR)
-	$(COPYTREE) $(BASEDIR) $(INSTALL_SOURCEDIR)
-fpc_exampleinstall: $(addsuffix _distclean,$(TARGET_EXAMPLEDIRS))
-ifdef HASEXAMPLES
-	$(MKDIR) $(INSTALL_EXAMPLEDIR)
-endif
-ifdef EXAMPLESOURCEFILES
-	$(COPY) $(EXAMPLESOURCEFILES) $(INSTALL_EXAMPLEDIR)
-endif
-ifdef TARGET_EXAMPLEDIRS
-	$(COPYTREE) $(addsuffix /*,$(TARGET_EXAMPLEDIRS)) $(INSTALL_EXAMPLEDIR)
-endif
-.PHONY: fpc_distinstall
-fpc_distinstall: install exampleinstall
-.PHONY: fpc_zipinstall fpc_zipsourceinstall fpc_zipexampleinstall
-ifndef PACKDIR
-ifndef inUnix
-PACKDIR=$(BASEDIR)/../fpc-pack
-else
-PACKDIR=/tmp/fpc-pack
-endif
-endif
-ifndef ZIPNAME
-ifdef DIST_ZIPNAME
-ZIPNAME=$(DIST_ZIPNAME)
-else
-ZIPNAME=$(ZIPPREFIX)$(PACKAGE_NAME)$(ZIPSUFFIX)
-endif
-endif
-ifndef ZIPTARGET
-ifdef DIST_ZIPTARGET
-ZIPTARGET=DIST_ZIPTARGET
-else
-ZIPTARGET=install
-endif
-endif
-ifndef USEZIP
-ifdef inUnix
-USETAR=1
-endif
-endif
-ifndef inUnix
-USEZIPWRAPPER=1
-endif
-ifdef USEZIPWRAPPER
-ZIPPATHSEP=$(PATHSEP)
-ZIPWRAPPER=$(subst /,$(PATHSEP),$(DIST_DESTDIR)/fpczip$(BATCHEXT))
-else
-ZIPPATHSEP=/
-endif
-ZIPCMD_CDPACK:=cd $(subst /,$(ZIPPATHSEP),$(PACKDIR))
-ZIPCMD_CDBASE:=cd $(subst /,$(ZIPPATHSEP),$(BASEDIR))
-ifdef USETAR
-ZIPDESTFILE:=$(DIST_DESTDIR)/$(ZIPNAME)$(TAREXT)
-ZIPCMD_ZIP:=$(TARPROG) cf$(TAROPT) $(ZIPDESTFILE) *
-else
-ZIPDESTFILE:=$(DIST_DESTDIR)/$(ZIPNAME)$(ZIPEXT)
-ZIPCMD_ZIP:=$(subst /,$(ZIPPATHSEP),$(ZIPPROG)) -Dr $(ZIPOPT) $(ZIPDESTFILE) *
-endif
-fpc_zipinstall:
-	$(MAKE) $(ZIPTARGET) INSTALL_PREFIX=$(PACKDIR) ZIPINSTALL=1
-	$(MKDIR) $(DIST_DESTDIR)
-	$(DEL) $(ZIPDESTFILE)
-ifdef USEZIPWRAPPER
-ifneq ($(ECHOREDIR),echo)
-	$(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_CDPACK))" > $(ZIPWRAPPER)
-	$(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_ZIP))" >> $(ZIPWRAPPER)
-	$(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_CDBASE))" >> $(ZIPWRAPPER)
-else
-	echo $(ZIPCMD_CDPACK) > $(ZIPWRAPPER)
-	echo $(ZIPCMD_ZIP) >> $(ZIPWRAPPER)
-	echo $(ZIPCMD_CDBASE) >> $(ZIPWRAPPER)
-endif
-ifdef inUnix
-	/bin/sh $(ZIPWRAPPER)
-else
-	$(ZIPWRAPPER)
-endif
-	$(DEL) $(ZIPWRAPPER)
-else
-	$(ZIPCMD_CDPACK) ; $(ZIPCMD_ZIP) ; $(ZIPCMD_CDBASE)
-endif
-	$(DELTREE) $(PACKDIR)
-fpc_zipsourceinstall:
-	$(MAKE) fpc_zipinstall ZIPTARGET=sourceinstall ZIPSUFFIX=src
-fpc_zipexampleinstall:
-ifdef HASEXAMPLES
-	$(MAKE) fpc_zipinstall ZIPTARGET=exampleinstall ZIPSUFFIX=exm
-endif
-fpc_zipdistinstall:
-	$(MAKE) fpc_zipinstall ZIPTARGET=distinstall
-.PHONY: fpc_clean fpc_cleanall fpc_distclean
-ifdef EXEFILES
-override CLEANEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(CLEANEXEFILES))
-endif
-ifdef CLEAN_UNITS
-override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
-endif
-ifdef CLEANPPUFILES
-override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
-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)
-fpc_distclean: clean
-ifdef COMPILER_UNITTARGETDIR
-TARGETDIRCLEAN=fpc_clean
-endif
-fpc_cleanall: $(CLEANTARGET) $(TARGETDIRCLEAN)
-ifdef CLEANEXEFILES
-	-$(DEL) $(CLEANEXEFILES)
-endif
-	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
-	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
-ifdef AOUTEXT
-	-$(DEL) *$(AOUTEXT)
-endif
-.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 Target.. $(FULL_SOURCE)
-	@$(ECHO)  Full Source.. $(FULL_TARGET)
-	@$(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)  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)  ZipPrefix............ $(ZIPPREFIX)
-	@$(ECHO)  ZipSuffix............ $(ZIPSUFFIX)
-	@$(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
-examples: fpc_examples
-shared:
-install: fpc_install
-sourceinstall: fpc_sourceinstall
-exampleinstall: fpc_exampleinstall
-distinstall: fpc_distinstall
-zipinstall: fpc_zipinstall
-zipsourceinstall: fpc_zipsourceinstall
-zipexampleinstall: fpc_zipexampleinstall
-zipdistinstall: fpc_zipdistinstall
-clean: fpc_clean
-distclean: fpc_distclean
-cleanall: fpc_cleanall
-info: fpc_info
-makefiles: fpc_makefiles
-.PHONY: all debug smart release examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefiles
-ifneq ($(wildcard fpcmake.loc),)
-include fpcmake.loc
-endif
-testgdbm$(EXEEXT): testgdbm.pp gdbm$(PPUEXT)
-testgdbm2$(EXEEXT): testgdbm2.pp gdbm$(PPUEXT)

+ 0 - 26
packages/gdbm/Makefile.fpc

@@ -1,26 +0,0 @@
-#
-#   Makefile.fpc for gdbm bindings
-#
-
-[package]
-name=gdbm
-version=1.0.5
-
-[target]
-units=gdbm
-examples=testgdbm testgdbm2
-
-[require]
-package=rtl
-
-[install]
-examplesubdir=gdbm
-fpcpackage=y
-
-[default]
-fpcdir=../..
-
-[rules]
-testgdbm$(EXEEXT): testgdbm.pp gdbm$(PPUEXT)
-
-testgdbm2$(EXEEXT): testgdbm2.pp gdbm$(PPUEXT)

+ 0 - 50
packages/gdbm/README

@@ -1,50 +0,0 @@
-
-This is the Free Pascal interface to the GDBM library routines. 
-Essentially, this is a translation of the gdbm.h header files, with some
-additional routines.
-
-The headers translated without any problems, the only thing that should
-be taken into account is that the 
-GDBM_SYNC constant (for open flags) has been renamed to GDMB_DOSYNC
-because it conflicts with the gdbm_sync function. 
-
-Be careful: the TDatum.dptr data pointer which is allocated by the
-gdbm routines should be freed by the C free() call, NOT with the 
-pascal FreeMem() call.
-
-A solution for this is to use the 'cmem' unit, which replaces the standard
-FPC memory manager with the C memory manager. In that case, freemem()
-may be used to free the dptr field of the TDatum record.
-
-On top of the plain C header translations, The GDBM routines have been 
-overloaded with routines that accept plain strings as key or data 
-parameters. This means the following routines have been added:
-
-function gdbm_open(Const para1:string; para2:longint; para3:longint; para4:longint; para5:TGDBMErrorCallBack ):PGDBM_FILE;
-function gdbm_store(para1:PGDBM_FILE; Const para2:string; Const para3:string; para4:longint):Boolean;
-function gdbm_fetch(para1:PGDBM_FILE; Const para2:string):string;
-function gdbm_delete(para1:PGDBM_FILE; Const para2:string):boolean;
-procedure gdbm_firstkey(para1:PGDBM_FILE; var key :string);
-function gdbm_nextkey(para1:PGDBM_FILE; Const para2:string):string;
-function gdbm_exists(para1:PGDBM_FILE; Const para2:string):boolean;
-
-They are just the C routines, but with the TDatum type (a record) 
-replaced by a string. The routines take automatically care of memory
-deallocation.
-
-Functions that returned an integer to indicate success or failure have been
-replaced by functions that return a boolean.
-
-Careful: 
-When using ansistrings, make sure the gdbm unit has been compiled
-with the -Sh switch. The unit should work with both kinds of strings.
-
-There are 2 test programs:
-testgdbm tests the raw C header translation
-testgdbm2 tests the String interface to the GDBM routines.
-
-That's about it. 
-
-Enjoy!
-
-Michael. ([email protected])

Niektóre pliki nie zostały wyświetlone z powodu dużej ilości zmienionych plików