Browse Source

* regenerated

peter 23 years ago
parent
commit
0816ae4006
84 changed files with 5982 additions and 2389 deletions
  1. 162 30
      Makefile
  2. 64 23
      compiler/Makefile
  3. 57 22
      compiler/new/Makefile
  4. 63 23
      compiler/utils/Makefile
  5. 94 18
      demo/Makefile
  6. 66 25
      demo/graph/Makefile
  7. 63 23
      demo/linux/Makefile
  8. 63 23
      demo/modex/Makefile
  9. 63 23
      demo/os2/Makefile
  10. 63 23
      demo/text/Makefile
  11. 63 23
      demo/win32/Makefile
  12. 94 53
      fcl/Makefile
  13. 88 41
      fcl/db/Makefile
  14. 54 25
      fcl/db/dbase/Makefile
  15. 71 31
      fcl/db/interbase/Makefile
  16. 71 31
      fcl/db/mysql/Makefile
  17. 82 53
      fcl/db/tests/Makefile
  18. 61 26
      fcl/shedit/Makefile
  19. 98 73
      fcl/shedit/gtk/Makefile
  20. 82 53
      fcl/tests/Makefile
  21. 54 25
      fcl/xml/Makefile
  22. 73 26
      fv/Makefile
  23. 68 29
      fv/test/Makefile
  24. 73 26
      fvision/Makefile
  25. 68 29
      fvision/test/Makefile
  26. 92 43
      ide/Makefile
  27. 66 25
      ide/compiler/Makefile
  28. 66 25
      ide/fakegdb/Makefile
  29. 98 29
      install/fpinst/Makefile
  30. 231 42
      packages/Makefile
  31. 66 14
      packages/asyncio/Makefile
  32. 85 55
      packages/asyncio/fpasync/Makefile
  33. 66 25
      packages/asyncio/libasync/Makefile
  34. 66 25
      packages/cmem/Makefile
  35. 78 32
      packages/forms/Makefile
  36. 73 35
      packages/forms/demo/Makefile
  37. 66 25
      packages/gdbint/Makefile
  38. 52 12
      packages/gdbint/libgdb/Makefile
  39. 66 25
      packages/gdbm/Makefile
  40. 66 25
      packages/ggi/Makefile
  41. 88 39
      packages/gtk/Makefile
  42. 83 42
      packages/gtk/examples/Makefile
  43. 65 34
      packages/gtk/examples/tutorial/Makefile
  44. 74 37
      packages/gtk/gtkgl/Makefile
  45. 66 25
      packages/ibase/Makefile
  46. 66 25
      packages/inet/Makefile
  47. 66 25
      packages/libgd/Makefile
  48. 71 31
      packages/libpng/Makefile
  49. 66 25
      packages/mmsystem/Makefile
  50. 66 25
      packages/mysql/Makefile
  51. 66 25
      packages/ncurses/Makefile
  52. 76 32
      packages/opengl/Makefile
  53. 85 55
      packages/opengl/build/Makefile
  54. 71 35
      packages/opengl/examples/Makefile
  55. 73 26
      packages/oracle/Makefile
  56. 90 61
      packages/oracle/example/Makefile
  57. 54 25
      packages/paszlib/Makefile
  58. 66 25
      packages/postgres/Makefile
  59. 54 25
      packages/regexpr/Makefile
  60. 66 25
      packages/svgalib/Makefile
  61. 66 25
      packages/syslog/Makefile
  62. 66 25
      packages/uncgi/Makefile
  63. 66 25
      packages/unzip/Makefile
  64. 66 25
      packages/utmp/Makefile
  65. 66 25
      packages/x11/Makefile
  66. 66 25
      packages/zlib/Makefile
  67. 130 22
      rtl/Makefile
  68. 57 18
      rtl/amiga/Makefile
  69. 57 18
      rtl/beos/Makefile
  70. 58 19
      rtl/freebsd/Makefile
  71. 57 18
      rtl/go32v1/Makefile
  72. 57 18
      rtl/go32v2/Makefile
  73. 51 18
      rtl/linux/Makefile
  74. 7 1
      rtl/objpas/objpas.pp
  75. 57 18
      rtl/os2/Makefile
  76. 57 18
      rtl/win32/Makefile
  77. 48 15
      tests/Makefile
  78. 66 25
      tests/units/Makefile
  79. 101 58
      utils/Makefile
  80. 57 23
      utils/dxegen/Makefile
  81. 51 23
      utils/fprcp/Makefile
  82. 51 23
      utils/h2pas/Makefile
  83. 63 23
      utils/simulator/Makefile
  84. 54 25
      utils/tply/Makefile

+ 162 - 30
Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/10/16]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: help
 override PATH:=$(subst \,/,$(PATH))
@@ -38,6 +38,12 @@ 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
@@ -64,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=.
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -113,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=.
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -138,8 +145,14 @@ endif
 endif
 endif
 endif
+ifndef CROSSDIR
+CROSSDIR:=$(FPCDIR)/cross/$(FULL_TARGET)
+endif
+ifndef CROSSTARGETDIR
+CROSSTARGETDIR=$(CROSSDIR)/$(FULL_TARGET)
+endif
 ifdef CROSSCOMPILE
-UNITSDIR:=$(wildcard $(FPCDIR)/cross/$(FULL_TARGET)/units)
+UNITSDIR:=$(wildcard $(CROSSTARGETDIR)/units)
 ifeq ($(UNITSDIR),)
 UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
 endif
@@ -264,6 +277,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -274,6 +290,14 @@ 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
@@ -334,10 +358,18 @@ 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)
@@ -349,10 +381,18 @@ 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)
@@ -364,10 +404,18 @@ 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)
@@ -381,7 +429,7 @@ INSTALL_DATADIR=$(INSTALL_BASEDIR)
 endif
 ifdef CROSSCOMPILE
 ifndef CROSSBINDIR
-CROSSBINDIR:=$(wildcard $(FPCDIR)/cross/$(FULL_TARGET)/bin/$(FULL_SOURCE))
+CROSSBINDIR:=$(wildcard $(CROSSTARGETDIR)/bin/$(FULL_SOURCE))
 ifeq ($(CROSSBINDIR),)
 CROSSBINDIR:=$(wildcard $(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/bin/$(FULL_SOURCE))
 endif
@@ -646,30 +694,47 @@ 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)/as$(SRCEXEEXT)
+ASPROG=$(CROSSBINDIR)/$(ASNAME)$(SRCEXEEXT)
 else
-ASPROG=as
+ASPROG=$(ASNAME)
 endif
 endif
 ifndef LDPROG
 ifdef CROSSBINDIR
-LDPROG=$(CROSSBINDIR)/ld$(SRCEXEEXT)
+LDPROG=$(CROSSBINDIR)/$(LDNAME)$(SRCEXEEXT)
 else
-LDPROG=ld
+LDPROG=$(LDNAME)
 endif
 endif
 ifndef RCPROG
 ifdef CROSSBINDIR
-RCPROG=$(CROSSBINDIR)/rc$(SRCEXEEXT)
+RCPROG=$(CROSSBINDIR)/$(RCNAME)$(SRCEXEEXT)
+else
+RCPROG=$(RCNAME)
+endif
+endif
+ifndef ARPROG
+ifdef CROSSBINDIR
+ARPROG=$(CROSSBINDIR)/$(ARNAME)$(SRCEXEEXT)
 else
-RCPROG=rc
+ARPROG=$(ARNAME)
 endif
 endif
 AS=$(ASPROG)
 LD=$(LDPROG)
 RC=$(RCPROG)
+AR=$(ARPROG)
 PPAS=ppas$(BATCHEXT)
 ifdef inUnix
 LDCONFIG=ldconfig
@@ -943,12 +1008,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -978,7 +1044,11 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Tools info ==
 	@$(ECHO)
-	@$(ECHO)  Pwd....... $(PWD)
+	@$(ECHO)  As........ $(AS)
+	@$(ECHO)  Ld........ $(LD)
+	@$(ECHO)  Ar........ $(AR)
+	@$(ECHO)  Rc........ $(RC)
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -992,12 +1062,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1024,6 +1095,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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_DIRS_COMPILER=1
 TARGET_DIRS_RTL=1
 TARGET_DIRS_UTILS=1
@@ -1066,9 +1153,15 @@ compiler_cleanall:
 	$(MAKE) -C compiler cleanall
 compiler_info:
 	$(MAKE) -C compiler info
+compiler_makefile:
+	$(MAKE) -C compiler makefile
+compiler_makefiles:
+	$(MAKE) -C compiler makefiles
+compiler_makefile_dirs:
+	$(MAKE) -C compiler makefile_dirs
 compiler:
 	$(MAKE) -C compiler all
-.PHONY: compiler_all compiler_debug compiler_smart compiler_examples compiler_shared compiler_install compiler_sourceinstall compiler_exampleinstall compiler_distinstall compiler_zipinstall compiler_zipsourceinstall compiler_zipexampleinstall compiler_zipdistinstall compiler_clean compiler_distclean compiler_cleanall compiler_info compiler
+.PHONY: compiler_all compiler_debug compiler_smart compiler_examples compiler_shared compiler_install compiler_sourceinstall compiler_exampleinstall compiler_distinstall compiler_zipinstall compiler_zipsourceinstall compiler_zipexampleinstall compiler_zipdistinstall compiler_clean compiler_distclean compiler_cleanall compiler_info compiler_makefile compiler_makefiles compiler_makefile_dirs compiler
 endif
 ifdef TARGET_DIRS_RTL
 rtl_all:
@@ -1105,9 +1198,15 @@ rtl_cleanall:
 	$(MAKE) -C rtl cleanall
 rtl_info:
 	$(MAKE) -C rtl info
+rtl_makefile:
+	$(MAKE) -C rtl makefile
+rtl_makefiles:
+	$(MAKE) -C rtl makefiles
+rtl_makefile_dirs:
+	$(MAKE) -C rtl makefile_dirs
 rtl:
 	$(MAKE) -C rtl all
-.PHONY: rtl_all rtl_debug rtl_smart rtl_examples rtl_shared rtl_install rtl_sourceinstall rtl_exampleinstall rtl_distinstall rtl_zipinstall rtl_zipsourceinstall rtl_zipexampleinstall rtl_zipdistinstall rtl_clean rtl_distclean rtl_cleanall rtl_info rtl
+.PHONY: rtl_all rtl_debug rtl_smart rtl_examples rtl_shared rtl_install rtl_sourceinstall rtl_exampleinstall rtl_distinstall rtl_zipinstall rtl_zipsourceinstall rtl_zipexampleinstall rtl_zipdistinstall rtl_clean rtl_distclean rtl_cleanall rtl_info rtl_makefile rtl_makefiles rtl_makefile_dirs rtl
 endif
 ifdef TARGET_DIRS_UTILS
 utils_all:
@@ -1144,9 +1243,15 @@ utils_cleanall:
 	$(MAKE) -C utils cleanall
 utils_info:
 	$(MAKE) -C utils info
+utils_makefile:
+	$(MAKE) -C utils makefile
+utils_makefiles:
+	$(MAKE) -C utils makefiles
+utils_makefile_dirs:
+	$(MAKE) -C utils makefile_dirs
 utils:
 	$(MAKE) -C utils all
-.PHONY: utils_all utils_debug utils_smart utils_examples utils_shared utils_install utils_sourceinstall utils_exampleinstall utils_distinstall utils_zipinstall utils_zipsourceinstall utils_zipexampleinstall utils_zipdistinstall utils_clean utils_distclean utils_cleanall utils_info utils
+.PHONY: utils_all utils_debug utils_smart utils_examples utils_shared utils_install utils_sourceinstall utils_exampleinstall utils_distinstall utils_zipinstall utils_zipsourceinstall utils_zipexampleinstall utils_zipdistinstall utils_clean utils_distclean utils_cleanall utils_info utils_makefile utils_makefiles utils_makefile_dirs utils
 endif
 ifdef TARGET_DIRS_FCL
 fcl_all:
@@ -1183,9 +1288,15 @@ fcl_cleanall:
 	$(MAKE) -C fcl cleanall
 fcl_info:
 	$(MAKE) -C fcl info
+fcl_makefile:
+	$(MAKE) -C fcl makefile
+fcl_makefiles:
+	$(MAKE) -C fcl makefiles
+fcl_makefile_dirs:
+	$(MAKE) -C fcl makefile_dirs
 fcl:
 	$(MAKE) -C fcl all
-.PHONY: fcl_all fcl_debug fcl_smart fcl_examples fcl_shared fcl_install fcl_sourceinstall fcl_exampleinstall fcl_distinstall fcl_zipinstall fcl_zipsourceinstall fcl_zipexampleinstall fcl_zipdistinstall fcl_clean fcl_distclean fcl_cleanall fcl_info fcl
+.PHONY: fcl_all fcl_debug fcl_smart fcl_examples fcl_shared fcl_install fcl_sourceinstall fcl_exampleinstall fcl_distinstall fcl_zipinstall fcl_zipsourceinstall fcl_zipexampleinstall fcl_zipdistinstall fcl_clean fcl_distclean fcl_cleanall fcl_info fcl_makefile fcl_makefiles fcl_makefile_dirs fcl
 endif
 ifdef TARGET_DIRS_FV
 fv_all:
@@ -1222,9 +1333,15 @@ fv_cleanall:
 	$(MAKE) -C fv cleanall
 fv_info:
 	$(MAKE) -C fv info
+fv_makefile:
+	$(MAKE) -C fv makefile
+fv_makefiles:
+	$(MAKE) -C fv makefiles
+fv_makefile_dirs:
+	$(MAKE) -C fv makefile_dirs
 fv:
 	$(MAKE) -C fv all
-.PHONY: fv_all fv_debug fv_smart fv_examples fv_shared fv_install fv_sourceinstall fv_exampleinstall fv_distinstall fv_zipinstall fv_zipsourceinstall fv_zipexampleinstall fv_zipdistinstall fv_clean fv_distclean fv_cleanall fv_info fv
+.PHONY: fv_all fv_debug fv_smart fv_examples fv_shared fv_install fv_sourceinstall fv_exampleinstall fv_distinstall fv_zipinstall fv_zipsourceinstall fv_zipexampleinstall fv_zipdistinstall fv_clean fv_distclean fv_cleanall fv_info fv_makefile fv_makefiles fv_makefile_dirs fv
 endif
 ifdef TARGET_DIRS_PACKAGES
 packages_all:
@@ -1261,9 +1378,15 @@ packages_cleanall:
 	$(MAKE) -C packages cleanall
 packages_info:
 	$(MAKE) -C packages info
+packages_makefile:
+	$(MAKE) -C packages makefile
+packages_makefiles:
+	$(MAKE) -C packages makefiles
+packages_makefile_dirs:
+	$(MAKE) -C packages makefile_dirs
 packages:
 	$(MAKE) -C packages all
-.PHONY: packages_all packages_debug packages_smart packages_examples packages_shared packages_install packages_sourceinstall packages_exampleinstall packages_distinstall packages_zipinstall packages_zipsourceinstall packages_zipexampleinstall packages_zipdistinstall packages_clean packages_distclean packages_cleanall packages_info packages
+.PHONY: packages_all packages_debug packages_smart packages_examples packages_shared packages_install packages_sourceinstall packages_exampleinstall packages_distinstall packages_zipinstall packages_zipsourceinstall packages_zipexampleinstall packages_zipdistinstall packages_clean packages_distclean packages_cleanall packages_info packages_makefile packages_makefiles packages_makefile_dirs packages
 endif
 ifdef TARGET_DIRS_IDE
 ide_all:
@@ -1300,9 +1423,15 @@ ide_cleanall:
 	$(MAKE) -C ide cleanall
 ide_info:
 	$(MAKE) -C ide info
+ide_makefile:
+	$(MAKE) -C ide makefile
+ide_makefiles:
+	$(MAKE) -C ide makefiles
+ide_makefile_dirs:
+	$(MAKE) -C ide makefile_dirs
 ide:
 	$(MAKE) -C ide all
-.PHONY: ide_all ide_debug ide_smart ide_examples ide_shared ide_install ide_sourceinstall ide_exampleinstall ide_distinstall ide_zipinstall ide_zipsourceinstall ide_zipexampleinstall ide_zipdistinstall ide_clean ide_distclean ide_cleanall ide_info ide
+.PHONY: ide_all ide_debug ide_smart ide_examples ide_shared ide_install ide_sourceinstall ide_exampleinstall ide_distinstall ide_zipinstall ide_zipsourceinstall ide_zipexampleinstall ide_zipdistinstall ide_clean ide_distclean ide_cleanall ide_info ide_makefile ide_makefiles ide_makefile_dirs ide
 endif
 debug: $(addsuffix _debug,$(TARGET_DIRS))
 smart: $(addsuffix _smart,$(TARGET_DIRS))
@@ -1316,7 +1445,10 @@ zipexampleinstall: fpc_zipexampleinstall $(addsuffix _zipexampleinstall,$(TARGET
 zipdistinstall: fpc_zipdistinstall $(addsuffix _zipdistinstall,$(TARGET_DIRS))
 cleanall: $(addsuffix _cleanall,$(TARGET_DIRS))
 info: fpc_info
-.PHONY: debug smart examples shared sourceinstall exampleinstall distinstall zipsourceinstall zipexampleinstall zipdistinstall cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: debug smart examples shared sourceinstall exampleinstall distinstall zipsourceinstall zipexampleinstall zipdistinstall cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 64 - 23
compiler/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -251,6 +252,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -261,6 +265,14 @@ 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
@@ -764,15 +776,18 @@ 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:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -791,7 +806,6 @@ ifdef UNITDIR_RTL
 override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
-.PHONY: package_rtl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -1026,12 +1040,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1065,7 +1080,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1079,12 +1094,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1111,6 +1127,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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_DIRS_UTILS=1
 ifdef TARGET_DIRS_UTILS
 utils_all:
@@ -1147,9 +1179,15 @@ utils_cleanall:
 	$(MAKE) -C utils cleanall
 utils_info:
 	$(MAKE) -C utils info
+utils_makefile:
+	$(MAKE) -C utils makefile
+utils_makefiles:
+	$(MAKE) -C utils makefiles
+utils_makefile_dirs:
+	$(MAKE) -C utils makefile_dirs
 utils:
 	$(MAKE) -C utils all
-.PHONY: utils_all utils_debug utils_smart utils_examples utils_shared utils_install utils_sourceinstall utils_exampleinstall utils_distinstall utils_zipinstall utils_zipsourceinstall utils_zipexampleinstall utils_zipdistinstall utils_clean utils_distclean utils_cleanall utils_info utils
+.PHONY: utils_all utils_debug utils_smart utils_examples utils_shared utils_install utils_sourceinstall utils_exampleinstall utils_distinstall utils_zipinstall utils_zipsourceinstall utils_zipexampleinstall utils_zipdistinstall utils_clean utils_distclean utils_cleanall utils_info utils_makefile utils_makefiles utils_makefile_dirs utils
 endif
 ifndef DIFF
 DIFF:=$(strip $(wildcard $(addsuffix /diff$(SRCEXEEXT),$(SEARCHPATH))))
@@ -1182,7 +1220,10 @@ zipexampleinstall: fpc_zipexampleinstall $(addsuffix _zipexampleinstall,$(TARGET
 zipdistinstall: fpc_zipdistinstall $(addsuffix _zipdistinstall,$(TARGET_DIRS))
 cleanall: $(addsuffix _cleanall,$(TARGET_DIRS))
 info: fpc_info
-.PHONY: debug smart examples shared sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: debug smart examples shared sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 57 - 22
compiler/new/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -238,6 +239,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -248,6 +252,14 @@ 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
@@ -751,15 +763,18 @@ 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:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -778,7 +793,6 @@ ifdef UNITDIR_RTL
 override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
-.PHONY: package_rtl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -1013,12 +1027,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1052,7 +1067,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1066,12 +1081,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1098,6 +1114,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
 ifndef DIFF
 DIFF:=$(strip $(wildcard $(addsuffix /diff$(SRCEXEEXT),$(SEARCHPATH))))
 ifeq ($(DIFF),)
@@ -1129,7 +1161,10 @@ zipexampleinstall: fpc_zipexampleinstall
 zipdistinstall: fpc_zipdistinstall
 cleanall:
 info: fpc_info
-.PHONY: debug smart examples shared sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: debug smart examples shared sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 63 - 23
compiler/utils/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -181,6 +182,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -191,6 +195,14 @@ 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
@@ -694,15 +706,18 @@ 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:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -721,7 +736,6 @@ ifdef UNITDIR_RTL
 override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
-.PHONY: package_rtl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -856,7 +870,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -869,6 +883,8 @@ fpc_debug:
 %$(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)
@@ -876,6 +892,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -977,12 +996,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1016,7 +1036,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1030,12 +1050,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1062,6 +1083,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1079,7 +1116,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 94 - 18
demo/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -119,6 +119,14 @@ 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)
@@ -182,6 +190,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -192,6 +203,14 @@ 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
@@ -902,12 +921,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -941,7 +961,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -955,12 +975,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -987,6 +1008,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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_DIRS_TEXT=1
 TARGET_DIRS_GRAPH=1
 ifeq ($(OS_TARGET),linux)
@@ -1036,9 +1073,15 @@ text_cleanall:
 	$(MAKE) -C text cleanall
 text_info:
 	$(MAKE) -C text info
+text_makefile:
+	$(MAKE) -C text makefile
+text_makefiles:
+	$(MAKE) -C text makefiles
+text_makefile_dirs:
+	$(MAKE) -C text makefile_dirs
 text:
 	$(MAKE) -C text all
-.PHONY: text_all text_debug text_smart text_examples text_shared text_install text_sourceinstall text_exampleinstall text_distinstall text_zipinstall text_zipsourceinstall text_zipexampleinstall text_zipdistinstall text_clean text_distclean text_cleanall text_info text
+.PHONY: text_all text_debug text_smart text_examples text_shared text_install text_sourceinstall text_exampleinstall text_distinstall text_zipinstall text_zipsourceinstall text_zipexampleinstall text_zipdistinstall text_clean text_distclean text_cleanall text_info text_makefile text_makefiles text_makefile_dirs text
 endif
 ifdef TARGET_DIRS_GRAPH
 graph_all:
@@ -1075,9 +1118,15 @@ graph_cleanall:
 	$(MAKE) -C graph cleanall
 graph_info:
 	$(MAKE) -C graph info
+graph_makefile:
+	$(MAKE) -C graph makefile
+graph_makefiles:
+	$(MAKE) -C graph makefiles
+graph_makefile_dirs:
+	$(MAKE) -C graph makefile_dirs
 graph:
 	$(MAKE) -C graph all
-.PHONY: graph_all graph_debug graph_smart graph_examples graph_shared graph_install graph_sourceinstall graph_exampleinstall graph_distinstall graph_zipinstall graph_zipsourceinstall graph_zipexampleinstall graph_zipdistinstall graph_clean graph_distclean graph_cleanall graph_info graph
+.PHONY: graph_all graph_debug graph_smart graph_examples graph_shared graph_install graph_sourceinstall graph_exampleinstall graph_distinstall graph_zipinstall graph_zipsourceinstall graph_zipexampleinstall graph_zipdistinstall graph_clean graph_distclean graph_cleanall graph_info graph_makefile graph_makefiles graph_makefile_dirs graph
 endif
 ifdef TARGET_DIRS_LINUX
 linux_all:
@@ -1114,9 +1163,15 @@ linux_cleanall:
 	$(MAKE) -C linux cleanall
 linux_info:
 	$(MAKE) -C linux info
+linux_makefile:
+	$(MAKE) -C linux makefile
+linux_makefiles:
+	$(MAKE) -C linux makefiles
+linux_makefile_dirs:
+	$(MAKE) -C linux makefile_dirs
 linux:
 	$(MAKE) -C linux all
-.PHONY: linux_all linux_debug linux_smart linux_examples linux_shared linux_install linux_sourceinstall linux_exampleinstall linux_distinstall linux_zipinstall linux_zipsourceinstall linux_zipexampleinstall linux_zipdistinstall linux_clean linux_distclean linux_cleanall linux_info linux
+.PHONY: linux_all linux_debug linux_smart linux_examples linux_shared linux_install linux_sourceinstall linux_exampleinstall linux_distinstall linux_zipinstall linux_zipsourceinstall linux_zipexampleinstall linux_zipdistinstall linux_clean linux_distclean linux_cleanall linux_info linux_makefile linux_makefiles linux_makefile_dirs linux
 endif
 ifdef TARGET_DIRS_MODEX
 modex_all:
@@ -1153,9 +1208,15 @@ modex_cleanall:
 	$(MAKE) -C modex cleanall
 modex_info:
 	$(MAKE) -C modex info
+modex_makefile:
+	$(MAKE) -C modex makefile
+modex_makefiles:
+	$(MAKE) -C modex makefiles
+modex_makefile_dirs:
+	$(MAKE) -C modex makefile_dirs
 modex:
 	$(MAKE) -C modex all
-.PHONY: modex_all modex_debug modex_smart modex_examples modex_shared modex_install modex_sourceinstall modex_exampleinstall modex_distinstall modex_zipinstall modex_zipsourceinstall modex_zipexampleinstall modex_zipdistinstall modex_clean modex_distclean modex_cleanall modex_info modex
+.PHONY: modex_all modex_debug modex_smart modex_examples modex_shared modex_install modex_sourceinstall modex_exampleinstall modex_distinstall modex_zipinstall modex_zipsourceinstall modex_zipexampleinstall modex_zipdistinstall modex_clean modex_distclean modex_cleanall modex_info modex_makefile modex_makefiles modex_makefile_dirs modex
 endif
 ifdef TARGET_DIRS_WIN32
 win32_all:
@@ -1192,9 +1253,15 @@ win32_cleanall:
 	$(MAKE) -C win32 cleanall
 win32_info:
 	$(MAKE) -C win32 info
+win32_makefile:
+	$(MAKE) -C win32 makefile
+win32_makefiles:
+	$(MAKE) -C win32 makefiles
+win32_makefile_dirs:
+	$(MAKE) -C win32 makefile_dirs
 win32:
 	$(MAKE) -C win32 all
-.PHONY: win32_all win32_debug win32_smart win32_examples win32_shared win32_install win32_sourceinstall win32_exampleinstall win32_distinstall win32_zipinstall win32_zipsourceinstall win32_zipexampleinstall win32_zipdistinstall win32_clean win32_distclean win32_cleanall win32_info win32
+.PHONY: win32_all win32_debug win32_smart win32_examples win32_shared win32_install win32_sourceinstall win32_exampleinstall win32_distinstall win32_zipinstall win32_zipsourceinstall win32_zipexampleinstall win32_zipdistinstall win32_clean win32_distclean win32_cleanall win32_info win32_makefile win32_makefiles win32_makefile_dirs win32
 endif
 ifdef TARGET_DIRS_OS2
 os2_all:
@@ -1231,9 +1298,15 @@ os2_cleanall:
 	$(MAKE) -C os2 cleanall
 os2_info:
 	$(MAKE) -C os2 info
+os2_makefile:
+	$(MAKE) -C os2 makefile
+os2_makefiles:
+	$(MAKE) -C os2 makefiles
+os2_makefile_dirs:
+	$(MAKE) -C os2 makefile_dirs
 os2:
 	$(MAKE) -C os2 all
-.PHONY: os2_all os2_debug os2_smart os2_examples os2_shared os2_install os2_sourceinstall os2_exampleinstall os2_distinstall os2_zipinstall os2_zipsourceinstall os2_zipexampleinstall os2_zipdistinstall os2_clean os2_distclean os2_cleanall os2_info os2
+.PHONY: os2_all os2_debug os2_smart os2_examples os2_shared os2_install os2_sourceinstall os2_exampleinstall os2_distinstall os2_zipinstall os2_zipsourceinstall os2_zipexampleinstall os2_zipdistinstall os2_clean os2_distclean os2_cleanall os2_info os2_makefile os2_makefiles os2_makefile_dirs os2
 endif
 all: $(addsuffix _all,$(TARGET_DIRS))
 debug: $(addsuffix _debug,$(TARGET_DIRS))
@@ -1252,7 +1325,10 @@ clean: $(addsuffix _clean,$(TARGET_DIRS))
 distclean: $(addsuffix _distclean,$(TARGET_DIRS))
 cleanall: $(addsuffix _cleanall,$(TARGET_DIRS))
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 66 - 25
demo/graph/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -180,6 +181,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -190,6 +194,14 @@ 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
@@ -693,15 +705,18 @@ 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:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -720,7 +735,6 @@ ifdef UNITDIR_RTL
 override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
-.PHONY: package_rtl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -834,8 +848,9 @@ endif
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 .PHONY: fpc_exes
@@ -863,7 +878,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -876,6 +891,8 @@ fpc_debug:
 %$(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)
@@ -883,6 +900,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -984,12 +1004,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1023,7 +1044,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1037,12 +1058,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1069,6 +1091,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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: fpc_debug
 smart: fpc_smart
 examples:
@@ -1084,7 +1122,10 @@ zipdistinstall:
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 63 - 23
demo/linux/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -178,6 +179,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -188,6 +192,14 @@ 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
@@ -691,15 +703,18 @@ 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:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -718,7 +733,6 @@ ifdef UNITDIR_RTL
 override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
-.PHONY: package_rtl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -853,7 +867,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -866,6 +880,8 @@ fpc_debug:
 %$(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)
@@ -873,6 +889,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -974,12 +993,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1013,7 +1033,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1027,12 +1047,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1059,6 +1080,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1076,7 +1113,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 63 - 23
demo/modex/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -178,6 +179,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -188,6 +192,14 @@ 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
@@ -691,15 +703,18 @@ 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:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -718,7 +733,6 @@ ifdef UNITDIR_RTL
 override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
-.PHONY: package_rtl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -853,7 +867,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -866,6 +880,8 @@ fpc_debug:
 %$(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)
@@ -873,6 +889,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -974,12 +993,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1013,7 +1033,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1027,12 +1047,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1059,6 +1080,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1076,7 +1113,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 63 - 23
demo/os2/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -178,6 +179,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -188,6 +192,14 @@ 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
@@ -691,15 +703,18 @@ 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:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -718,7 +733,6 @@ ifdef UNITDIR_RTL
 override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
-.PHONY: package_rtl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -853,7 +867,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -866,6 +880,8 @@ fpc_debug:
 %$(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)
@@ -873,6 +889,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -974,12 +993,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1013,7 +1033,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1027,12 +1047,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1059,6 +1080,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1076,7 +1113,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 63 - 23
demo/text/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -176,6 +177,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -186,6 +190,14 @@ 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
@@ -689,15 +701,18 @@ 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:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -716,7 +731,6 @@ ifdef UNITDIR_RTL
 override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
-.PHONY: package_rtl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -851,7 +865,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -864,6 +878,8 @@ fpc_debug:
 %$(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)
@@ -871,6 +887,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -972,12 +991,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1011,7 +1031,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1025,12 +1045,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1057,6 +1078,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1074,7 +1111,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 63 - 23
demo/win32/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -178,6 +179,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -188,6 +192,14 @@ 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
@@ -691,15 +703,18 @@ 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:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -718,7 +733,6 @@ ifdef UNITDIR_RTL
 override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
-.PHONY: package_rtl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -853,7 +867,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -866,6 +880,8 @@ fpc_debug:
 %$(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)
@@ -873,6 +889,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -974,12 +993,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1013,7 +1033,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1027,12 +1047,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1059,6 +1080,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1076,7 +1113,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 94 - 53
fcl/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/13]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -231,6 +232,11 @@ UNIXINSTALLDIR=1
 endif
 endif
 ifndef INSTALL_PREFIX
+ifdef PREFIX
+INSTALL_PREFIX=$(PREFIX)
+endif
+endif
+ifndef INSTALL_PREFIX
 ifdef UNIXINSTALLDIR
 INSTALL_PREFIX=/usr/local
 else
@@ -773,14 +779,11 @@ REQUIRE_PACKAGES_RTL=1
 REQUIRE_PACKAGES_PASZLIB=1
 endif
 ifdef REQUIRE_PACKAGES_RTL
-PACKAGEDIR_RTL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -800,14 +803,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
 ifdef REQUIRE_PACKAGES_PASZLIB
-PACKAGEDIR_PASZLIB:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /paszlib/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_PASZLIB:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /paszlib/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_PASZLIB),)
-PACKAGEDIR_PASZLIB:=$(firstword $(PACKAGEDIR_PASZLIB))
-ifeq ($(wildcard $(PACKAGEDIR_PASZLIB)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_paszlib
-package_paszlib:
+override COMPILEPACKAGES+=$(PACKAGEDIR_PASZLIB)/$(FPCMADE)
+$(PACKAGEDIR_PASZLIB)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_PASZLIB) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_PASZLIB)/$(OS_TARGET)),)
 UNITDIR_PASZLIB=$(PACKAGEDIR_PASZLIB)/$(OS_TARGET)
 else
@@ -827,14 +827,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_PASZLIB)
 endif
 endif
 ifdef REQUIRE_PACKAGES_INET
-PACKAGEDIR_INET:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /inet/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_INET:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /inet/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_INET),)
-PACKAGEDIR_INET:=$(firstword $(PACKAGEDIR_INET))
-ifeq ($(wildcard $(PACKAGEDIR_INET)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_inet
-package_inet:
+override COMPILEPACKAGES+=$(PACKAGEDIR_INET)/$(FPCMADE)
+$(PACKAGEDIR_INET)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_INET) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_INET)/$(OS_TARGET)),)
 UNITDIR_INET=$(PACKAGEDIR_INET)/$(OS_TARGET)
 else
@@ -854,14 +851,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_INET)
 endif
 endif
 ifdef REQUIRE_PACKAGES_MYSQL
-PACKAGEDIR_MYSQL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /mysql/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_MYSQL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /mysql/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_MYSQL),)
-PACKAGEDIR_MYSQL:=$(firstword $(PACKAGEDIR_MYSQL))
-ifeq ($(wildcard $(PACKAGEDIR_MYSQL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_mysql
-package_mysql:
+override COMPILEPACKAGES+=$(PACKAGEDIR_MYSQL)/$(FPCMADE)
+$(PACKAGEDIR_MYSQL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_MYSQL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_MYSQL)/$(OS_TARGET)),)
 UNITDIR_MYSQL=$(PACKAGEDIR_MYSQL)/$(OS_TARGET)
 else
@@ -881,14 +875,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_MYSQL)
 endif
 endif
 ifdef REQUIRE_PACKAGES_IBASE
-PACKAGEDIR_IBASE:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /ibase/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_IBASE:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /ibase/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_IBASE),)
-PACKAGEDIR_IBASE:=$(firstword $(PACKAGEDIR_IBASE))
-ifeq ($(wildcard $(PACKAGEDIR_IBASE)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_ibase
-package_ibase:
+override COMPILEPACKAGES+=$(PACKAGEDIR_IBASE)/$(FPCMADE)
+$(PACKAGEDIR_IBASE)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_IBASE) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_IBASE)/$(OS_TARGET)),)
 UNITDIR_IBASE=$(PACKAGEDIR_IBASE)/$(OS_TARGET)
 else
@@ -907,7 +898,6 @@ ifdef UNITDIR_IBASE
 override COMPILER_UNITDIR+=$(UNITDIR_IBASE)
 endif
 endif
-.PHONY: package_rtl package_paszlib package_inet package_mysql package_ibase
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -1027,8 +1017,9 @@ endif
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 ifdef TARGET_RSTS
@@ -1059,7 +1050,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -1072,6 +1063,8 @@ fpc_debug:
 %$(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)
@@ -1079,6 +1072,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -1259,12 +1255,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1298,7 +1295,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1312,12 +1309,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1344,6 +1342,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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_DIRS_XML=1
 TARGET_DIRS_DB=1
 TARGET_DIRS_SHEDIT=1
@@ -1382,9 +1396,15 @@ xml_cleanall:
 	$(MAKE) -C xml cleanall
 xml_info:
 	$(MAKE) -C xml info
+xml_makefile:
+	$(MAKE) -C xml makefile
+xml_makefiles:
+	$(MAKE) -C xml makefiles
+xml_makefile_dirs:
+	$(MAKE) -C xml makefile_dirs
 xml:
 	$(MAKE) -C xml all
-.PHONY: xml_all xml_debug xml_smart xml_examples xml_shared xml_install xml_sourceinstall xml_exampleinstall xml_distinstall xml_zipinstall xml_zipsourceinstall xml_zipexampleinstall xml_zipdistinstall xml_clean xml_distclean xml_cleanall xml_info xml
+.PHONY: xml_all xml_debug xml_smart xml_examples xml_shared xml_install xml_sourceinstall xml_exampleinstall xml_distinstall xml_zipinstall xml_zipsourceinstall xml_zipexampleinstall xml_zipdistinstall xml_clean xml_distclean xml_cleanall xml_info xml_makefile xml_makefiles xml_makefile_dirs xml
 endif
 ifdef TARGET_DIRS_DB
 db_all:
@@ -1421,9 +1441,15 @@ db_cleanall:
 	$(MAKE) -C db cleanall
 db_info:
 	$(MAKE) -C db info
+db_makefile:
+	$(MAKE) -C db makefile
+db_makefiles:
+	$(MAKE) -C db makefiles
+db_makefile_dirs:
+	$(MAKE) -C db makefile_dirs
 db:
 	$(MAKE) -C db all
-.PHONY: db_all db_debug db_smart db_examples db_shared db_install db_sourceinstall db_exampleinstall db_distinstall db_zipinstall db_zipsourceinstall db_zipexampleinstall db_zipdistinstall db_clean db_distclean db_cleanall db_info db
+.PHONY: db_all db_debug db_smart db_examples db_shared db_install db_sourceinstall db_exampleinstall db_distinstall db_zipinstall db_zipsourceinstall db_zipexampleinstall db_zipdistinstall db_clean db_distclean db_cleanall db_info db_makefile db_makefiles db_makefile_dirs db
 endif
 ifdef TARGET_DIRS_SHEDIT
 shedit_all:
@@ -1460,9 +1486,15 @@ shedit_cleanall:
 	$(MAKE) -C shedit cleanall
 shedit_info:
 	$(MAKE) -C shedit info
+shedit_makefile:
+	$(MAKE) -C shedit makefile
+shedit_makefiles:
+	$(MAKE) -C shedit makefiles
+shedit_makefile_dirs:
+	$(MAKE) -C shedit makefile_dirs
 shedit:
 	$(MAKE) -C shedit all
-.PHONY: shedit_all shedit_debug shedit_smart shedit_examples shedit_shared shedit_install shedit_sourceinstall shedit_exampleinstall shedit_distinstall shedit_zipinstall shedit_zipsourceinstall shedit_zipexampleinstall shedit_zipdistinstall shedit_clean shedit_distclean shedit_cleanall shedit_info shedit
+.PHONY: shedit_all shedit_debug shedit_smart shedit_examples shedit_shared shedit_install shedit_sourceinstall shedit_exampleinstall shedit_distinstall shedit_zipinstall shedit_zipsourceinstall shedit_zipexampleinstall shedit_zipdistinstall shedit_clean shedit_distclean shedit_cleanall shedit_info shedit_makefile shedit_makefiles shedit_makefile_dirs shedit
 endif
 TARGET_EXAMPLEDIRS_TESTS=1
 ifdef TARGET_EXAMPLEDIRS_TESTS
@@ -1500,9 +1532,15 @@ tests_cleanall:
 	$(MAKE) -C tests cleanall
 tests_info:
 	$(MAKE) -C tests info
+tests_makefile:
+	$(MAKE) -C tests makefile
+tests_makefiles:
+	$(MAKE) -C tests makefiles
+tests_makefile_dirs:
+	$(MAKE) -C tests makefile_dirs
 tests:
 	$(MAKE) -C tests all
-.PHONY: tests_all tests_debug tests_smart tests_examples tests_shared tests_install tests_sourceinstall tests_exampleinstall tests_distinstall tests_zipinstall tests_zipsourceinstall tests_zipexampleinstall tests_zipdistinstall tests_clean tests_distclean tests_cleanall tests_info tests
+.PHONY: tests_all tests_debug tests_smart tests_examples tests_shared tests_install tests_sourceinstall tests_exampleinstall tests_distinstall tests_zipinstall tests_zipsourceinstall tests_zipexampleinstall tests_zipdistinstall tests_clean tests_distclean tests_cleanall tests_info tests_makefile tests_makefiles tests_makefile_dirs tests
 endif
 all: fpc_all $(addsuffix _all,$(TARGET_DIRS))
 debug: fpc_debug
@@ -1521,7 +1559,10 @@ clean: fpc_clean $(addsuffix _clean,$(TARGET_DIRS)) $(addsuffix _clean,$(TARGET_
 distclean: fpc_distclean $(addsuffix _distclean,$(TARGET_DIRS))
 cleanall: fpc_cleanall $(addsuffix _cleanall,$(TARGET_DIRS))
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 88 - 41
fcl/db/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/13]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -209,6 +210,11 @@ UNIXINSTALLDIR=1
 endif
 endif
 ifndef INSTALL_PREFIX
+ifdef PREFIX
+INSTALL_PREFIX=$(PREFIX)
+endif
+endif
+ifndef INSTALL_PREFIX
 ifdef UNIXINSTALLDIR
 INSTALL_PREFIX=/usr/local
 else
@@ -737,14 +743,11 @@ ifeq ($(OS_TARGET),qnx)
 REQUIRE_PACKAGES_RTL=1
 endif
 ifdef REQUIRE_PACKAGES_RTL
-PACKAGEDIR_RTL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -764,14 +767,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
 ifdef REQUIRE_PACKAGES_MYSQL
-PACKAGEDIR_MYSQL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /mysql/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_MYSQL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /mysql/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_MYSQL),)
-PACKAGEDIR_MYSQL:=$(firstword $(PACKAGEDIR_MYSQL))
-ifeq ($(wildcard $(PACKAGEDIR_MYSQL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_mysql
-package_mysql:
+override COMPILEPACKAGES+=$(PACKAGEDIR_MYSQL)/$(FPCMADE)
+$(PACKAGEDIR_MYSQL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_MYSQL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_MYSQL)/$(OS_TARGET)),)
 UNITDIR_MYSQL=$(PACKAGEDIR_MYSQL)/$(OS_TARGET)
 else
@@ -791,14 +791,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_MYSQL)
 endif
 endif
 ifdef REQUIRE_PACKAGES_IBASE
-PACKAGEDIR_IBASE:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /ibase/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_IBASE:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /ibase/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_IBASE),)
-PACKAGEDIR_IBASE:=$(firstword $(PACKAGEDIR_IBASE))
-ifeq ($(wildcard $(PACKAGEDIR_IBASE)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_ibase
-package_ibase:
+override COMPILEPACKAGES+=$(PACKAGEDIR_IBASE)/$(FPCMADE)
+$(PACKAGEDIR_IBASE)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_IBASE) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_IBASE)/$(OS_TARGET)),)
 UNITDIR_IBASE=$(PACKAGEDIR_IBASE)/$(OS_TARGET)
 else
@@ -817,7 +814,6 @@ ifdef UNITDIR_IBASE
 override COMPILER_UNITDIR+=$(UNITDIR_IBASE)
 endif
 endif
-.PHONY: package_rtl package_mysql package_ibase
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -937,8 +933,9 @@ endif
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 ifdef TARGET_RSTS
@@ -969,7 +966,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -982,6 +979,8 @@ fpc_debug:
 %$(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)
@@ -989,6 +988,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -1090,12 +1092,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1129,7 +1132,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1143,12 +1146,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1175,6 +1179,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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_DIRS_DBASE=1
 ifeq ($(OS_TARGET),linux)
 TARGET_DIRS_MYSQL=1
@@ -1223,9 +1243,15 @@ dbase_cleanall:
 	$(MAKE) -C dbase cleanall
 dbase_info:
 	$(MAKE) -C dbase info
+dbase_makefile:
+	$(MAKE) -C dbase makefile
+dbase_makefiles:
+	$(MAKE) -C dbase makefiles
+dbase_makefile_dirs:
+	$(MAKE) -C dbase makefile_dirs
 dbase:
 	$(MAKE) -C dbase all
-.PHONY: dbase_all dbase_debug dbase_smart dbase_examples dbase_shared dbase_install dbase_sourceinstall dbase_exampleinstall dbase_distinstall dbase_zipinstall dbase_zipsourceinstall dbase_zipexampleinstall dbase_zipdistinstall dbase_clean dbase_distclean dbase_cleanall dbase_info dbase
+.PHONY: dbase_all dbase_debug dbase_smart dbase_examples dbase_shared dbase_install dbase_sourceinstall dbase_exampleinstall dbase_distinstall dbase_zipinstall dbase_zipsourceinstall dbase_zipexampleinstall dbase_zipdistinstall dbase_clean dbase_distclean dbase_cleanall dbase_info dbase_makefile dbase_makefiles dbase_makefile_dirs dbase
 endif
 ifdef TARGET_DIRS_MYSQL
 mysql_all:
@@ -1262,9 +1288,15 @@ mysql_cleanall:
 	$(MAKE) -C mysql cleanall
 mysql_info:
 	$(MAKE) -C mysql info
+mysql_makefile:
+	$(MAKE) -C mysql makefile
+mysql_makefiles:
+	$(MAKE) -C mysql makefiles
+mysql_makefile_dirs:
+	$(MAKE) -C mysql makefile_dirs
 mysql:
 	$(MAKE) -C mysql all
-.PHONY: mysql_all mysql_debug mysql_smart 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
+.PHONY: mysql_all mysql_debug mysql_smart 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_makefile mysql_makefiles mysql_makefile_dirs mysql
 endif
 ifdef TARGET_DIRS_INTERBASE
 interbase_all:
@@ -1301,9 +1333,15 @@ interbase_cleanall:
 	$(MAKE) -C interbase cleanall
 interbase_info:
 	$(MAKE) -C interbase info
+interbase_makefile:
+	$(MAKE) -C interbase makefile
+interbase_makefiles:
+	$(MAKE) -C interbase makefiles
+interbase_makefile_dirs:
+	$(MAKE) -C interbase makefile_dirs
 interbase:
 	$(MAKE) -C interbase all
-.PHONY: interbase_all interbase_debug interbase_smart interbase_examples interbase_shared interbase_install interbase_sourceinstall interbase_exampleinstall interbase_distinstall interbase_zipinstall interbase_zipsourceinstall interbase_zipexampleinstall interbase_zipdistinstall interbase_clean interbase_distclean interbase_cleanall interbase_info interbase
+.PHONY: interbase_all interbase_debug interbase_smart interbase_examples interbase_shared interbase_install interbase_sourceinstall interbase_exampleinstall interbase_distinstall interbase_zipinstall interbase_zipsourceinstall interbase_zipexampleinstall interbase_zipdistinstall interbase_clean interbase_distclean interbase_cleanall interbase_info interbase_makefile interbase_makefiles interbase_makefile_dirs interbase
 endif
 TARGET_EXAMPLEDIRS_TESTS=1
 ifdef TARGET_EXAMPLEDIRS_TESTS
@@ -1341,9 +1379,15 @@ tests_cleanall:
 	$(MAKE) -C tests cleanall
 tests_info:
 	$(MAKE) -C tests info
+tests_makefile:
+	$(MAKE) -C tests makefile
+tests_makefiles:
+	$(MAKE) -C tests makefiles
+tests_makefile_dirs:
+	$(MAKE) -C tests makefile_dirs
 tests:
 	$(MAKE) -C tests all
-.PHONY: tests_all tests_debug tests_smart tests_examples tests_shared tests_install tests_sourceinstall tests_exampleinstall tests_distinstall tests_zipinstall tests_zipsourceinstall tests_zipexampleinstall tests_zipdistinstall tests_clean tests_distclean tests_cleanall tests_info tests
+.PHONY: tests_all tests_debug tests_smart tests_examples tests_shared tests_install tests_sourceinstall tests_exampleinstall tests_distinstall tests_zipinstall tests_zipsourceinstall tests_zipexampleinstall tests_zipdistinstall tests_clean tests_distclean tests_cleanall tests_info tests_makefile tests_makefiles tests_makefile_dirs tests
 endif
 all: fpc_all $(addsuffix _all,$(TARGET_DIRS))
 debug: fpc_debug
@@ -1362,7 +1406,10 @@ clean: fpc_clean $(addsuffix _clean,$(TARGET_DIRS)) $(addsuffix _clean,$(TARGET_
 distclean: fpc_distclean $(addsuffix _distclean,$(TARGET_DIRS))
 cleanall: fpc_cleanall $(addsuffix _cleanall,$(TARGET_DIRS))
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 54 - 25
fcl/db/dbase/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/13]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -199,6 +200,11 @@ UNIXINSTALLDIR=1
 endif
 endif
 ifndef INSTALL_PREFIX
+ifdef PREFIX
+INSTALL_PREFIX=$(PREFIX)
+endif
+endif
+ifndef INSTALL_PREFIX
 ifdef UNIXINSTALLDIR
 INSTALL_PREFIX=/usr/local
 else
@@ -707,14 +713,11 @@ ifeq ($(OS_TARGET),qnx)
 REQUIRE_PACKAGES_RTL=1
 endif
 ifdef REQUIRE_PACKAGES_RTL
-PACKAGEDIR_RTL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -733,7 +736,6 @@ ifdef UNITDIR_RTL
 override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
-.PHONY: package_rtl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -847,8 +849,9 @@ endif
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 ifdef TARGET_RSTS
@@ -879,7 +882,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -892,6 +895,8 @@ fpc_debug:
 %$(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)
@@ -899,6 +904,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -1000,12 +1008,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1039,7 +1048,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1053,12 +1062,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1085,6 +1095,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1102,7 +1128,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 71 - 31
fcl/db/interbase/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -181,6 +182,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -191,6 +195,14 @@ 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
@@ -717,15 +729,20 @@ ifeq ($(OS_TARGET),atari)
 REQUIRE_PACKAGES_RTL=1
 REQUIRE_PACKAGES_IBASE=1
 endif
+ifeq ($(OS_TARGET),sunos)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_IBASE=1
+endif
+ifeq ($(OS_TARGET),qnx)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_IBASE=1
+endif
 ifdef REQUIRE_PACKAGES_RTL
-PACKAGEDIR_RTL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -745,14 +762,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
 ifdef REQUIRE_PACKAGES_IBASE
-PACKAGEDIR_IBASE:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /ibase/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_IBASE:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /ibase/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_IBASE),)
-PACKAGEDIR_IBASE:=$(firstword $(PACKAGEDIR_IBASE))
-ifeq ($(wildcard $(PACKAGEDIR_IBASE)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_ibase
-package_ibase:
+override COMPILEPACKAGES+=$(PACKAGEDIR_IBASE)/$(FPCMADE)
+$(PACKAGEDIR_IBASE)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_IBASE) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_IBASE)/$(OS_TARGET)),)
 UNITDIR_IBASE=$(PACKAGEDIR_IBASE)/$(OS_TARGET)
 else
@@ -771,7 +785,6 @@ ifdef UNITDIR_IBASE
 override COMPILER_UNITDIR+=$(UNITDIR_IBASE)
 endif
 endif
-.PHONY: package_rtl package_ibase
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -891,8 +904,9 @@ endif
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 ifdef TARGET_RSTS
@@ -923,7 +937,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -936,6 +950,8 @@ fpc_debug:
 %$(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)
@@ -943,6 +959,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -1044,12 +1063,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1083,7 +1103,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1097,12 +1117,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1129,6 +1150,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1146,7 +1183,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 71 - 31
fcl/db/mysql/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -181,6 +182,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -191,6 +195,14 @@ 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
@@ -717,15 +729,20 @@ ifeq ($(OS_TARGET),atari)
 REQUIRE_PACKAGES_RTL=1
 REQUIRE_PACKAGES_MYSQL=1
 endif
+ifeq ($(OS_TARGET),sunos)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_MYSQL=1
+endif
+ifeq ($(OS_TARGET),qnx)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_MYSQL=1
+endif
 ifdef REQUIRE_PACKAGES_RTL
-PACKAGEDIR_RTL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -745,14 +762,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
 ifdef REQUIRE_PACKAGES_MYSQL
-PACKAGEDIR_MYSQL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /mysql/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_MYSQL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /mysql/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_MYSQL),)
-PACKAGEDIR_MYSQL:=$(firstword $(PACKAGEDIR_MYSQL))
-ifeq ($(wildcard $(PACKAGEDIR_MYSQL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_mysql
-package_mysql:
+override COMPILEPACKAGES+=$(PACKAGEDIR_MYSQL)/$(FPCMADE)
+$(PACKAGEDIR_MYSQL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_MYSQL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_MYSQL)/$(OS_TARGET)),)
 UNITDIR_MYSQL=$(PACKAGEDIR_MYSQL)/$(OS_TARGET)
 else
@@ -771,7 +785,6 @@ ifdef UNITDIR_MYSQL
 override COMPILER_UNITDIR+=$(UNITDIR_MYSQL)
 endif
 endif
-.PHONY: package_rtl package_mysql
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -891,8 +904,9 @@ endif
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 ifdef TARGET_RSTS
@@ -923,7 +937,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -936,6 +950,8 @@ fpc_debug:
 %$(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)
@@ -943,6 +959,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -1044,12 +1063,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1083,7 +1103,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1097,12 +1117,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1129,6 +1150,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1146,7 +1183,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 82 - 53
fcl/db/tests/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -178,6 +179,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -188,6 +192,14 @@ 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
@@ -732,15 +744,22 @@ 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:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -760,14 +779,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
 ifdef REQUIRE_PACKAGES_PASZLIB
-PACKAGEDIR_PASZLIB:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /paszlib/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_PASZLIB:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /paszlib/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_PASZLIB),)
-PACKAGEDIR_PASZLIB:=$(firstword $(PACKAGEDIR_PASZLIB))
-ifeq ($(wildcard $(PACKAGEDIR_PASZLIB)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_paszlib
-package_paszlib:
+override COMPILEPACKAGES+=$(PACKAGEDIR_PASZLIB)/$(FPCMADE)
+$(PACKAGEDIR_PASZLIB)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_PASZLIB) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_PASZLIB)/$(OS_TARGET)),)
 UNITDIR_PASZLIB=$(PACKAGEDIR_PASZLIB)/$(OS_TARGET)
 else
@@ -787,14 +803,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_PASZLIB)
 endif
 endif
 ifdef REQUIRE_PACKAGES_INET
-PACKAGEDIR_INET:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /inet/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_INET:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /inet/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_INET),)
-PACKAGEDIR_INET:=$(firstword $(PACKAGEDIR_INET))
-ifeq ($(wildcard $(PACKAGEDIR_INET)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_inet
-package_inet:
+override COMPILEPACKAGES+=$(PACKAGEDIR_INET)/$(FPCMADE)
+$(PACKAGEDIR_INET)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_INET) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_INET)/$(OS_TARGET)),)
 UNITDIR_INET=$(PACKAGEDIR_INET)/$(OS_TARGET)
 else
@@ -814,14 +827,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_INET)
 endif
 endif
 ifdef REQUIRE_PACKAGES_FCL
-PACKAGEDIR_FCL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fcl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_FCL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fcl/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_FCL),)
-PACKAGEDIR_FCL:=$(firstword $(PACKAGEDIR_FCL))
-ifeq ($(wildcard $(PACKAGEDIR_FCL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_fcl
-package_fcl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_FCL)/$(FPCMADE)
+$(PACKAGEDIR_FCL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_FCL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_FCL)/$(OS_TARGET)),)
 UNITDIR_FCL=$(PACKAGEDIR_FCL)/$(OS_TARGET)
 else
@@ -841,14 +851,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_FCL)
 endif
 endif
 ifdef REQUIRE_PACKAGES_MYSQL
-PACKAGEDIR_MYSQL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /mysql/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_MYSQL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /mysql/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_MYSQL),)
-PACKAGEDIR_MYSQL:=$(firstword $(PACKAGEDIR_MYSQL))
-ifeq ($(wildcard $(PACKAGEDIR_MYSQL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_mysql
-package_mysql:
+override COMPILEPACKAGES+=$(PACKAGEDIR_MYSQL)/$(FPCMADE)
+$(PACKAGEDIR_MYSQL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_MYSQL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_MYSQL)/$(OS_TARGET)),)
 UNITDIR_MYSQL=$(PACKAGEDIR_MYSQL)/$(OS_TARGET)
 else
@@ -868,14 +875,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_MYSQL)
 endif
 endif
 ifdef REQUIRE_PACKAGES_IBASE
-PACKAGEDIR_IBASE:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /ibase/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_IBASE:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /ibase/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_IBASE),)
-PACKAGEDIR_IBASE:=$(firstword $(PACKAGEDIR_IBASE))
-ifeq ($(wildcard $(PACKAGEDIR_IBASE)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_ibase
-package_ibase:
+override COMPILEPACKAGES+=$(PACKAGEDIR_IBASE)/$(FPCMADE)
+$(PACKAGEDIR_IBASE)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_IBASE) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_IBASE)/$(OS_TARGET)),)
 UNITDIR_IBASE=$(PACKAGEDIR_IBASE)/$(OS_TARGET)
 else
@@ -894,7 +898,6 @@ ifdef UNITDIR_IBASE
 override COMPILER_UNITDIR+=$(UNITDIR_IBASE)
 endif
 endif
-.PHONY: package_rtl package_paszlib package_inet package_fcl package_mysql package_ibase
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -1035,7 +1038,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -1048,6 +1051,8 @@ fpc_debug:
 %$(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)
@@ -1055,6 +1060,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -1156,12 +1164,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1195,7 +1204,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1209,12 +1218,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1241,6 +1251,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1258,7 +1284,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 61 - 26
fcl/shedit/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/13]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -199,6 +200,11 @@ UNIXINSTALLDIR=1
 endif
 endif
 ifndef INSTALL_PREFIX
+ifdef PREFIX
+INSTALL_PREFIX=$(PREFIX)
+endif
+endif
+ifndef INSTALL_PREFIX
 ifdef UNIXINSTALLDIR
 INSTALL_PREFIX=/usr/local
 else
@@ -707,14 +713,11 @@ ifeq ($(OS_TARGET),qnx)
 REQUIRE_PACKAGES_RTL=1
 endif
 ifdef REQUIRE_PACKAGES_RTL
-PACKAGEDIR_RTL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -733,7 +736,6 @@ ifdef UNITDIR_RTL
 override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
-.PHONY: package_rtl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -847,8 +849,9 @@ endif
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 ifdef TARGET_RSTS
@@ -879,7 +882,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -892,6 +895,8 @@ fpc_debug:
 %$(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)
@@ -899,6 +904,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -1000,12 +1008,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1039,7 +1048,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1053,12 +1062,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1085,6 +1095,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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_GTK=1
 ifdef TARGET_EXAMPLEDIRS_GTK
 gtk_all:
@@ -1121,9 +1147,15 @@ gtk_cleanall:
 	$(MAKE) -C gtk cleanall
 gtk_info:
 	$(MAKE) -C gtk info
+gtk_makefile:
+	$(MAKE) -C gtk makefile
+gtk_makefiles:
+	$(MAKE) -C gtk makefiles
+gtk_makefile_dirs:
+	$(MAKE) -C gtk makefile_dirs
 gtk:
 	$(MAKE) -C gtk all
-.PHONY: gtk_all gtk_debug gtk_smart 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
+.PHONY: gtk_all gtk_debug gtk_smart 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_makefile gtk_makefiles gtk_makefile_dirs gtk
 endif
 all: fpc_all
 debug: fpc_debug
@@ -1142,7 +1174,10 @@ clean: fpc_clean $(addsuffix _clean,$(TARGET_EXAMPLEDIRS))
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 98 - 73
fcl/shedit/gtk/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -178,6 +179,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -188,6 +192,14 @@ 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
@@ -753,15 +765,26 @@ REQUIRE_PACKAGES_FCL=1
 REQUIRE_PACKAGES_GTK=1
 REQUIRE_PACKAGES_OPENGL=1
 endif
+ifeq ($(OS_TARGET),sunos)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL=1
+REQUIRE_PACKAGES_GTK=1
+REQUIRE_PACKAGES_OPENGL=1
+endif
+ifeq ($(OS_TARGET),qnx)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL=1
+REQUIRE_PACKAGES_GTK=1
+REQUIRE_PACKAGES_OPENGL=1
+endif
 ifdef REQUIRE_PACKAGES_RTL
-PACKAGEDIR_RTL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -781,14 +804,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
 ifdef REQUIRE_PACKAGES_PASZLIB
-PACKAGEDIR_PASZLIB:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /paszlib/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_PASZLIB:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /paszlib/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_PASZLIB),)
-PACKAGEDIR_PASZLIB:=$(firstword $(PACKAGEDIR_PASZLIB))
-ifeq ($(wildcard $(PACKAGEDIR_PASZLIB)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_paszlib
-package_paszlib:
+override COMPILEPACKAGES+=$(PACKAGEDIR_PASZLIB)/$(FPCMADE)
+$(PACKAGEDIR_PASZLIB)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_PASZLIB) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_PASZLIB)/$(OS_TARGET)),)
 UNITDIR_PASZLIB=$(PACKAGEDIR_PASZLIB)/$(OS_TARGET)
 else
@@ -808,14 +828,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_PASZLIB)
 endif
 endif
 ifdef REQUIRE_PACKAGES_INET
-PACKAGEDIR_INET:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /inet/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_INET:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /inet/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_INET),)
-PACKAGEDIR_INET:=$(firstword $(PACKAGEDIR_INET))
-ifeq ($(wildcard $(PACKAGEDIR_INET)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_inet
-package_inet:
+override COMPILEPACKAGES+=$(PACKAGEDIR_INET)/$(FPCMADE)
+$(PACKAGEDIR_INET)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_INET) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_INET)/$(OS_TARGET)),)
 UNITDIR_INET=$(PACKAGEDIR_INET)/$(OS_TARGET)
 else
@@ -835,14 +852,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_INET)
 endif
 endif
 ifdef REQUIRE_PACKAGES_FCL
-PACKAGEDIR_FCL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fcl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_FCL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fcl/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_FCL),)
-PACKAGEDIR_FCL:=$(firstword $(PACKAGEDIR_FCL))
-ifeq ($(wildcard $(PACKAGEDIR_FCL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_fcl
-package_fcl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_FCL)/$(FPCMADE)
+$(PACKAGEDIR_FCL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_FCL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_FCL)/$(OS_TARGET)),)
 UNITDIR_FCL=$(PACKAGEDIR_FCL)/$(OS_TARGET)
 else
@@ -862,14 +876,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_FCL)
 endif
 endif
 ifdef REQUIRE_PACKAGES_GTK
-PACKAGEDIR_GTK:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /gtk/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_GTK:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /gtk/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_GTK),)
-PACKAGEDIR_GTK:=$(firstword $(PACKAGEDIR_GTK))
-ifeq ($(wildcard $(PACKAGEDIR_GTK)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_gtk
-package_gtk:
+override COMPILEPACKAGES+=$(PACKAGEDIR_GTK)/$(FPCMADE)
+$(PACKAGEDIR_GTK)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_GTK) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_GTK)/$(OS_TARGET)),)
 UNITDIR_GTK=$(PACKAGEDIR_GTK)/$(OS_TARGET)
 else
@@ -889,14 +900,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_GTK)
 endif
 endif
 ifdef REQUIRE_PACKAGES_MYSQL
-PACKAGEDIR_MYSQL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /mysql/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_MYSQL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /mysql/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_MYSQL),)
-PACKAGEDIR_MYSQL:=$(firstword $(PACKAGEDIR_MYSQL))
-ifeq ($(wildcard $(PACKAGEDIR_MYSQL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_mysql
-package_mysql:
+override COMPILEPACKAGES+=$(PACKAGEDIR_MYSQL)/$(FPCMADE)
+$(PACKAGEDIR_MYSQL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_MYSQL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_MYSQL)/$(OS_TARGET)),)
 UNITDIR_MYSQL=$(PACKAGEDIR_MYSQL)/$(OS_TARGET)
 else
@@ -916,14 +924,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_MYSQL)
 endif
 endif
 ifdef REQUIRE_PACKAGES_IBASE
-PACKAGEDIR_IBASE:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /ibase/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_IBASE:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /ibase/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_IBASE),)
-PACKAGEDIR_IBASE:=$(firstword $(PACKAGEDIR_IBASE))
-ifeq ($(wildcard $(PACKAGEDIR_IBASE)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_ibase
-package_ibase:
+override COMPILEPACKAGES+=$(PACKAGEDIR_IBASE)/$(FPCMADE)
+$(PACKAGEDIR_IBASE)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_IBASE) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_IBASE)/$(OS_TARGET)),)
 UNITDIR_IBASE=$(PACKAGEDIR_IBASE)/$(OS_TARGET)
 else
@@ -943,14 +948,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_IBASE)
 endif
 endif
 ifdef REQUIRE_PACKAGES_X11
-PACKAGEDIR_X11:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /x11/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_X11:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /x11/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_X11),)
-PACKAGEDIR_X11:=$(firstword $(PACKAGEDIR_X11))
-ifeq ($(wildcard $(PACKAGEDIR_X11)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_x11
-package_x11:
+override COMPILEPACKAGES+=$(PACKAGEDIR_X11)/$(FPCMADE)
+$(PACKAGEDIR_X11)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_X11) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_X11)/$(OS_TARGET)),)
 UNITDIR_X11=$(PACKAGEDIR_X11)/$(OS_TARGET)
 else
@@ -970,14 +972,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_X11)
 endif
 endif
 ifdef REQUIRE_PACKAGES_OPENGL
-PACKAGEDIR_OPENGL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /opengl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_OPENGL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /opengl/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_OPENGL),)
-PACKAGEDIR_OPENGL:=$(firstword $(PACKAGEDIR_OPENGL))
-ifeq ($(wildcard $(PACKAGEDIR_OPENGL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_opengl
-package_opengl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_OPENGL)/$(FPCMADE)
+$(PACKAGEDIR_OPENGL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_OPENGL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_OPENGL)/$(OS_TARGET)),)
 UNITDIR_OPENGL=$(PACKAGEDIR_OPENGL)/$(OS_TARGET)
 else
@@ -996,7 +995,6 @@ ifdef UNITDIR_OPENGL
 override COMPILER_UNITDIR+=$(UNITDIR_OPENGL)
 endif
 endif
-.PHONY: package_rtl package_paszlib package_inet package_fcl package_gtk package_mysql package_ibase package_x11 package_opengl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -1116,8 +1114,9 @@ endif
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 .PHONY: fpc_exes
@@ -1145,7 +1144,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -1158,6 +1157,8 @@ fpc_debug:
 %$(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)
@@ -1165,6 +1166,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -1266,12 +1270,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1305,7 +1310,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1319,12 +1324,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1351,6 +1357,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1368,7 +1390,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 82 - 53
fcl/tests/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -184,6 +185,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -194,6 +198,14 @@ 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
@@ -738,15 +750,22 @@ 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:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -766,14 +785,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
 ifdef REQUIRE_PACKAGES_PASZLIB
-PACKAGEDIR_PASZLIB:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /paszlib/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_PASZLIB:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /paszlib/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_PASZLIB),)
-PACKAGEDIR_PASZLIB:=$(firstword $(PACKAGEDIR_PASZLIB))
-ifeq ($(wildcard $(PACKAGEDIR_PASZLIB)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_paszlib
-package_paszlib:
+override COMPILEPACKAGES+=$(PACKAGEDIR_PASZLIB)/$(FPCMADE)
+$(PACKAGEDIR_PASZLIB)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_PASZLIB) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_PASZLIB)/$(OS_TARGET)),)
 UNITDIR_PASZLIB=$(PACKAGEDIR_PASZLIB)/$(OS_TARGET)
 else
@@ -793,14 +809,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_PASZLIB)
 endif
 endif
 ifdef REQUIRE_PACKAGES_INET
-PACKAGEDIR_INET:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /inet/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_INET:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /inet/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_INET),)
-PACKAGEDIR_INET:=$(firstword $(PACKAGEDIR_INET))
-ifeq ($(wildcard $(PACKAGEDIR_INET)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_inet
-package_inet:
+override COMPILEPACKAGES+=$(PACKAGEDIR_INET)/$(FPCMADE)
+$(PACKAGEDIR_INET)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_INET) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_INET)/$(OS_TARGET)),)
 UNITDIR_INET=$(PACKAGEDIR_INET)/$(OS_TARGET)
 else
@@ -820,14 +833,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_INET)
 endif
 endif
 ifdef REQUIRE_PACKAGES_FCL
-PACKAGEDIR_FCL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fcl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_FCL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fcl/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_FCL),)
-PACKAGEDIR_FCL:=$(firstword $(PACKAGEDIR_FCL))
-ifeq ($(wildcard $(PACKAGEDIR_FCL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_fcl
-package_fcl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_FCL)/$(FPCMADE)
+$(PACKAGEDIR_FCL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_FCL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_FCL)/$(OS_TARGET)),)
 UNITDIR_FCL=$(PACKAGEDIR_FCL)/$(OS_TARGET)
 else
@@ -847,14 +857,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_FCL)
 endif
 endif
 ifdef REQUIRE_PACKAGES_MYSQL
-PACKAGEDIR_MYSQL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /mysql/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_MYSQL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /mysql/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_MYSQL),)
-PACKAGEDIR_MYSQL:=$(firstword $(PACKAGEDIR_MYSQL))
-ifeq ($(wildcard $(PACKAGEDIR_MYSQL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_mysql
-package_mysql:
+override COMPILEPACKAGES+=$(PACKAGEDIR_MYSQL)/$(FPCMADE)
+$(PACKAGEDIR_MYSQL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_MYSQL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_MYSQL)/$(OS_TARGET)),)
 UNITDIR_MYSQL=$(PACKAGEDIR_MYSQL)/$(OS_TARGET)
 else
@@ -874,14 +881,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_MYSQL)
 endif
 endif
 ifdef REQUIRE_PACKAGES_IBASE
-PACKAGEDIR_IBASE:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /ibase/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_IBASE:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /ibase/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_IBASE),)
-PACKAGEDIR_IBASE:=$(firstword $(PACKAGEDIR_IBASE))
-ifeq ($(wildcard $(PACKAGEDIR_IBASE)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_ibase
-package_ibase:
+override COMPILEPACKAGES+=$(PACKAGEDIR_IBASE)/$(FPCMADE)
+$(PACKAGEDIR_IBASE)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_IBASE) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_IBASE)/$(OS_TARGET)),)
 UNITDIR_IBASE=$(PACKAGEDIR_IBASE)/$(OS_TARGET)
 else
@@ -900,7 +904,6 @@ ifdef UNITDIR_IBASE
 override COMPILER_UNITDIR+=$(UNITDIR_IBASE)
 endif
 endif
-.PHONY: package_rtl package_paszlib package_inet package_fcl package_mysql package_ibase
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -1041,7 +1044,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -1054,6 +1057,8 @@ fpc_debug:
 %$(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)
@@ -1061,6 +1066,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -1162,12 +1170,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1201,7 +1210,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1215,12 +1224,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1247,6 +1257,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1264,7 +1290,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 54 - 25
fcl/xml/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/13]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -198,6 +199,11 @@ UNIXINSTALLDIR=1
 endif
 endif
 ifndef INSTALL_PREFIX
+ifdef PREFIX
+INSTALL_PREFIX=$(PREFIX)
+endif
+endif
+ifndef INSTALL_PREFIX
 ifdef UNIXINSTALLDIR
 INSTALL_PREFIX=/usr/local
 else
@@ -706,14 +712,11 @@ ifeq ($(OS_TARGET),qnx)
 REQUIRE_PACKAGES_RTL=1
 endif
 ifdef REQUIRE_PACKAGES_RTL
-PACKAGEDIR_RTL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -732,7 +735,6 @@ ifdef UNITDIR_RTL
 override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
-.PHONY: package_rtl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -846,8 +848,9 @@ endif
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 ifdef TARGET_RSTS
@@ -863,7 +866,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -876,6 +879,8 @@ fpc_debug:
 %$(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)
@@ -883,6 +888,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -984,12 +992,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1023,7 +1032,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1037,12 +1046,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1069,6 +1079,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1086,7 +1112,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 73 - 26
fv/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -183,6 +184,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -193,6 +197,14 @@ 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
@@ -696,15 +708,18 @@ 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:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -723,7 +738,6 @@ ifdef UNITDIR_RTL
 override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
-.PHONY: package_rtl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -837,8 +851,9 @@ endif
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 ifdef TARGET_RSTS
@@ -869,7 +884,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -882,6 +897,8 @@ fpc_debug:
 %$(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)
@@ -889,6 +906,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -1069,12 +1089,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1108,7 +1129,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1122,12 +1143,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1154,6 +1176,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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_TEST=1
 ifdef TARGET_EXAMPLEDIRS_TEST
 test_all:
@@ -1190,9 +1228,15 @@ test_cleanall:
 	$(MAKE) -C test cleanall
 test_info:
 	$(MAKE) -C test info
+test_makefile:
+	$(MAKE) -C test makefile
+test_makefiles:
+	$(MAKE) -C test makefiles
+test_makefile_dirs:
+	$(MAKE) -C test makefile_dirs
 test:
 	$(MAKE) -C test all
-.PHONY: test_all test_debug test_smart test_examples test_shared test_install test_sourceinstall test_exampleinstall test_distinstall test_zipinstall test_zipsourceinstall test_zipexampleinstall test_zipdistinstall test_clean test_distclean test_cleanall test_info test
+.PHONY: test_all test_debug test_smart test_examples test_shared test_install test_sourceinstall test_exampleinstall test_distinstall test_zipinstall test_zipsourceinstall test_zipexampleinstall test_zipdistinstall test_clean test_distclean test_cleanall test_info test_makefile test_makefiles test_makefile_dirs test
 endif
 all: fpc_all
 debug: fpc_debug
@@ -1211,7 +1255,10 @@ clean: fpc_clean $(addsuffix _clean,$(TARGET_EXAMPLEDIRS))
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 68 - 29
fv/test/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -176,6 +177,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -186,6 +190,14 @@ 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
@@ -698,15 +710,20 @@ ifeq ($(OS_TARGET),atari)
 REQUIRE_PACKAGES_RTL=1
 REQUIRE_PACKAGES_FVISION=1
 endif
+ifeq ($(OS_TARGET),sunos)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_FVISION=1
+endif
+ifeq ($(OS_TARGET),qnx)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_FVISION=1
+endif
 ifdef REQUIRE_PACKAGES_RTL
-PACKAGEDIR_RTL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -726,14 +743,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
 ifdef REQUIRE_PACKAGES_FVISION
-PACKAGEDIR_FVISION:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fvision/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_FVISION:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fvision/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_FVISION),)
-PACKAGEDIR_FVISION:=$(firstword $(PACKAGEDIR_FVISION))
-ifeq ($(wildcard $(PACKAGEDIR_FVISION)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_fvision
-package_fvision:
+override COMPILEPACKAGES+=$(PACKAGEDIR_FVISION)/$(FPCMADE)
+$(PACKAGEDIR_FVISION)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_FVISION) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_FVISION)/$(OS_TARGET)),)
 UNITDIR_FVISION=$(PACKAGEDIR_FVISION)/$(OS_TARGET)
 else
@@ -752,7 +766,6 @@ ifdef UNITDIR_FVISION
 override COMPILER_UNITDIR+=$(UNITDIR_FVISION)
 endif
 endif
-.PHONY: package_rtl package_fvision
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -887,7 +900,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -900,6 +913,8 @@ fpc_debug:
 %$(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)
@@ -907,6 +922,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -1008,12 +1026,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1047,7 +1066,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1061,12 +1080,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1093,6 +1113,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1110,7 +1146,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 73 - 26
fvision/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -183,6 +184,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -193,6 +197,14 @@ 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
@@ -696,15 +708,18 @@ 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:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -723,7 +738,6 @@ ifdef UNITDIR_RTL
 override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
-.PHONY: package_rtl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -837,8 +851,9 @@ endif
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 ifdef TARGET_RSTS
@@ -869,7 +884,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -882,6 +897,8 @@ fpc_debug:
 %$(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)
@@ -889,6 +906,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -1069,12 +1089,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1108,7 +1129,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1122,12 +1143,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1154,6 +1176,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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_TEST=1
 ifdef TARGET_EXAMPLEDIRS_TEST
 test_all:
@@ -1190,9 +1228,15 @@ test_cleanall:
 	$(MAKE) -C test cleanall
 test_info:
 	$(MAKE) -C test info
+test_makefile:
+	$(MAKE) -C test makefile
+test_makefiles:
+	$(MAKE) -C test makefiles
+test_makefile_dirs:
+	$(MAKE) -C test makefile_dirs
 test:
 	$(MAKE) -C test all
-.PHONY: test_all test_debug test_smart test_examples test_shared test_install test_sourceinstall test_exampleinstall test_distinstall test_zipinstall test_zipsourceinstall test_zipexampleinstall test_zipdistinstall test_clean test_distclean test_cleanall test_info test
+.PHONY: test_all test_debug test_smart test_examples test_shared test_install test_sourceinstall test_exampleinstall test_distinstall test_zipinstall test_zipsourceinstall test_zipexampleinstall test_zipdistinstall test_clean test_distclean test_cleanall test_info test_makefile test_makefiles test_makefile_dirs test
 endif
 all: fpc_all
 debug: fpc_debug
@@ -1211,7 +1255,10 @@ clean: fpc_clean $(addsuffix _clean,$(TARGET_EXAMPLEDIRS))
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 68 - 29
fvision/test/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -176,6 +177,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -186,6 +190,14 @@ 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
@@ -698,15 +710,20 @@ ifeq ($(OS_TARGET),atari)
 REQUIRE_PACKAGES_RTL=1
 REQUIRE_PACKAGES_FVISION=1
 endif
+ifeq ($(OS_TARGET),sunos)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_FVISION=1
+endif
+ifeq ($(OS_TARGET),qnx)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_FVISION=1
+endif
 ifdef REQUIRE_PACKAGES_RTL
-PACKAGEDIR_RTL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -726,14 +743,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
 ifdef REQUIRE_PACKAGES_FVISION
-PACKAGEDIR_FVISION:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fvision/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_FVISION:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fvision/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_FVISION),)
-PACKAGEDIR_FVISION:=$(firstword $(PACKAGEDIR_FVISION))
-ifeq ($(wildcard $(PACKAGEDIR_FVISION)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_fvision
-package_fvision:
+override COMPILEPACKAGES+=$(PACKAGEDIR_FVISION)/$(FPCMADE)
+$(PACKAGEDIR_FVISION)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_FVISION) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_FVISION)/$(OS_TARGET)),)
 UNITDIR_FVISION=$(PACKAGEDIR_FVISION)/$(OS_TARGET)
 else
@@ -752,7 +766,6 @@ ifdef UNITDIR_FVISION
 override COMPILER_UNITDIR+=$(UNITDIR_FVISION)
 endif
 endif
-.PHONY: package_rtl package_fvision
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -887,7 +900,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -900,6 +913,8 @@ fpc_debug:
 %$(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)
@@ -907,6 +922,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -1008,12 +1026,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1047,7 +1066,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1061,12 +1080,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1093,6 +1113,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1110,7 +1146,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 92 - 43
ide/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -230,6 +231,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -240,6 +244,14 @@ 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
@@ -784,15 +796,24 @@ REQUIRE_PACKAGES_FV=1
 REQUIRE_PACKAGES_GDBINT=1
 REQUIRE_PACKAGES_REGEXPR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_FV=1
+REQUIRE_PACKAGES_GDBINT=1
+REQUIRE_PACKAGES_REGEXPR=1
+endif
+ifeq ($(OS_TARGET),qnx)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_FV=1
+REQUIRE_PACKAGES_GDBINT=1
+REQUIRE_PACKAGES_REGEXPR=1
+endif
 ifdef REQUIRE_PACKAGES_RTL
-PACKAGEDIR_RTL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -812,14 +833,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
 ifdef REQUIRE_PACKAGES_FV
-PACKAGEDIR_FV:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fv/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_FV:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fv/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_FV),)
-PACKAGEDIR_FV:=$(firstword $(PACKAGEDIR_FV))
-ifeq ($(wildcard $(PACKAGEDIR_FV)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_fv
-package_fv:
+override COMPILEPACKAGES+=$(PACKAGEDIR_FV)/$(FPCMADE)
+$(PACKAGEDIR_FV)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_FV) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_FV)/$(OS_TARGET)),)
 UNITDIR_FV=$(PACKAGEDIR_FV)/$(OS_TARGET)
 else
@@ -839,14 +857,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_FV)
 endif
 endif
 ifdef REQUIRE_PACKAGES_GDBINT
-PACKAGEDIR_GDBINT:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /gdbint/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_GDBINT:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /gdbint/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_GDBINT),)
-PACKAGEDIR_GDBINT:=$(firstword $(PACKAGEDIR_GDBINT))
-ifeq ($(wildcard $(PACKAGEDIR_GDBINT)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_gdbint
-package_gdbint:
+override COMPILEPACKAGES+=$(PACKAGEDIR_GDBINT)/$(FPCMADE)
+$(PACKAGEDIR_GDBINT)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_GDBINT) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_GDBINT)/$(OS_TARGET)),)
 UNITDIR_GDBINT=$(PACKAGEDIR_GDBINT)/$(OS_TARGET)
 else
@@ -866,14 +881,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_GDBINT)
 endif
 endif
 ifdef REQUIRE_PACKAGES_REGEXPR
-PACKAGEDIR_REGEXPR:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /regexpr/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_REGEXPR:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /regexpr/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_REGEXPR),)
-PACKAGEDIR_REGEXPR:=$(firstword $(PACKAGEDIR_REGEXPR))
-ifeq ($(wildcard $(PACKAGEDIR_REGEXPR)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_regexpr
-package_regexpr:
+override COMPILEPACKAGES+=$(PACKAGEDIR_REGEXPR)/$(FPCMADE)
+$(PACKAGEDIR_REGEXPR)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_REGEXPR) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_REGEXPR)/$(OS_TARGET)),)
 UNITDIR_REGEXPR=$(PACKAGEDIR_REGEXPR)/$(OS_TARGET)
 else
@@ -892,7 +904,6 @@ ifdef UNITDIR_REGEXPR
 override COMPILER_UNITDIR+=$(UNITDIR_REGEXPR)
 endif
 endif
-.PHONY: package_rtl package_fv package_gdbint package_regexpr
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -1033,7 +1044,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -1046,6 +1057,8 @@ fpc_debug:
 %$(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)
@@ -1053,6 +1066,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -1233,12 +1249,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1272,7 +1289,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1286,12 +1303,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1318,6 +1336,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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_DIRS_COMPILER=1
 TARGET_DIRS_FAKEGDB=1
 ifdef TARGET_DIRS_COMPILER
@@ -1355,9 +1389,15 @@ compiler_cleanall:
 	$(MAKE) -C compiler cleanall
 compiler_info:
 	$(MAKE) -C compiler info
+compiler_makefile:
+	$(MAKE) -C compiler makefile
+compiler_makefiles:
+	$(MAKE) -C compiler makefiles
+compiler_makefile_dirs:
+	$(MAKE) -C compiler makefile_dirs
 compiler:
 	$(MAKE) -C compiler all
-.PHONY: compiler_all compiler_debug compiler_smart compiler_examples compiler_shared compiler_install compiler_sourceinstall compiler_exampleinstall compiler_distinstall compiler_zipinstall compiler_zipsourceinstall compiler_zipexampleinstall compiler_zipdistinstall compiler_clean compiler_distclean compiler_cleanall compiler_info compiler
+.PHONY: compiler_all compiler_debug compiler_smart compiler_examples compiler_shared compiler_install compiler_sourceinstall compiler_exampleinstall compiler_distinstall compiler_zipinstall compiler_zipsourceinstall compiler_zipexampleinstall compiler_zipdistinstall compiler_clean compiler_distclean compiler_cleanall compiler_info compiler_makefile compiler_makefiles compiler_makefile_dirs compiler
 endif
 ifdef TARGET_DIRS_FAKEGDB
 fakegdb_all:
@@ -1394,9 +1434,15 @@ fakegdb_cleanall:
 	$(MAKE) -C fakegdb cleanall
 fakegdb_info:
 	$(MAKE) -C fakegdb info
+fakegdb_makefile:
+	$(MAKE) -C fakegdb makefile
+fakegdb_makefiles:
+	$(MAKE) -C fakegdb makefiles
+fakegdb_makefile_dirs:
+	$(MAKE) -C fakegdb makefile_dirs
 fakegdb:
 	$(MAKE) -C fakegdb all
-.PHONY: fakegdb_all fakegdb_debug fakegdb_smart fakegdb_examples fakegdb_shared fakegdb_install fakegdb_sourceinstall fakegdb_exampleinstall fakegdb_distinstall fakegdb_zipinstall fakegdb_zipsourceinstall fakegdb_zipexampleinstall fakegdb_zipdistinstall fakegdb_clean fakegdb_distclean fakegdb_cleanall fakegdb_info fakegdb
+.PHONY: fakegdb_all fakegdb_debug fakegdb_smart fakegdb_examples fakegdb_shared fakegdb_install fakegdb_sourceinstall fakegdb_exampleinstall fakegdb_distinstall fakegdb_zipinstall fakegdb_zipsourceinstall fakegdb_zipexampleinstall fakegdb_zipdistinstall fakegdb_clean fakegdb_distclean fakegdb_cleanall fakegdb_info fakegdb_makefile fakegdb_makefiles fakegdb_makefile_dirs fakegdb
 endif
 debug: fpc_debug
 smart: fpc_smart
@@ -1411,7 +1457,10 @@ zipexampleinstall: fpc_zipexampleinstall $(addsuffix _zipexampleinstall,$(TARGET
 zipdistinstall: fpc_zipdistinstall $(addsuffix _zipdistinstall,$(TARGET_DIRS))
 cleanall: fpc_cleanall $(addsuffix _cleanall,$(TARGET_DIRS))
 info: fpc_info
-.PHONY: debug smart examples shared sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: debug smart examples shared sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 66 - 25
ide/compiler/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -191,6 +192,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -201,6 +205,14 @@ 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
@@ -704,15 +716,18 @@ 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:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -731,7 +746,6 @@ ifdef UNITDIR_RTL
 override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
-.PHONY: package_rtl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -845,8 +859,9 @@ endif
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 ifdef TARGET_RSTS
@@ -862,7 +877,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -875,6 +890,8 @@ fpc_debug:
 %$(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)
@@ -882,6 +899,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -983,12 +1003,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1022,7 +1043,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1036,12 +1057,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1068,6 +1090,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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: fpc_debug
 smart: fpc_smart
 examples:
@@ -1082,7 +1120,10 @@ zipdistinstall:
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: debug smart examples shared sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: debug smart examples shared sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 66 - 25
ide/fakegdb/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -177,6 +178,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -187,6 +191,14 @@ 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
@@ -690,15 +702,18 @@ 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:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -717,7 +732,6 @@ ifdef UNITDIR_RTL
 override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
-.PHONY: package_rtl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -831,8 +845,9 @@ endif
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 ifdef TARGET_RSTS
@@ -848,7 +863,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -861,6 +876,8 @@ fpc_debug:
 %$(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)
@@ -868,6 +885,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -969,12 +989,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1008,7 +1029,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1022,12 +1043,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1054,6 +1076,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1071,7 +1109,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 98 - 29
install/fpinst/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/10/18]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -38,6 +38,12 @@ 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
@@ -64,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -113,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -192,6 +199,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -202,6 +212,14 @@ 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
@@ -262,10 +280,18 @@ 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)
@@ -277,10 +303,18 @@ 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)
@@ -292,10 +326,18 @@ 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)
@@ -690,15 +732,20 @@ ifeq ($(OS_TARGET),atari)
 REQUIRE_PACKAGES_RTL=1
 REQUIRE_PACKAGES_FV=1
 endif
+ifeq ($(OS_TARGET),sunos)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_FV=1
+endif
+ifeq ($(OS_TARGET),qnx)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_FV=1
+endif
 ifdef REQUIRE_PACKAGES_RTL
-PACKAGEDIR_RTL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -718,14 +765,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
 ifdef REQUIRE_PACKAGES_FV
-PACKAGEDIR_FV:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fv/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_FV:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fv/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_FV),)
-PACKAGEDIR_FV:=$(firstword $(PACKAGEDIR_FV))
-ifeq ($(wildcard $(PACKAGEDIR_FV)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_fv
-package_fv:
+override COMPILEPACKAGES+=$(PACKAGEDIR_FV)/$(FPCMADE)
+$(PACKAGEDIR_FV)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_FV) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_FV)/$(OS_TARGET)),)
 UNITDIR_FV=$(PACKAGEDIR_FV)/$(OS_TARGET)
 else
@@ -744,7 +788,6 @@ ifdef UNITDIR_FV
 override COMPILER_UNITDIR+=$(UNITDIR_FV)
 endif
 endif
-.PHONY: package_rtl package_fv
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -879,7 +922,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -892,6 +935,8 @@ fpc_debug:
 %$(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)
@@ -899,6 +944,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -1079,12 +1127,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1118,7 +1167,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1132,12 +1181,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1164,6 +1214,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1181,7 +1247,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 231 - 42
packages/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/13]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -221,6 +222,11 @@ UNIXINSTALLDIR=1
 endif
 endif
 ifndef INSTALL_PREFIX
+ifdef PREFIX
+INSTALL_PREFIX=$(PREFIX)
+endif
+endif
+ifndef INSTALL_PREFIX
 ifdef UNIXINSTALLDIR
 INSTALL_PREFIX=/usr/local
 else
@@ -850,12 +856,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -889,7 +896,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -903,12 +910,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -935,6 +943,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1089,9 +1113,15 @@ zlib_cleanall:
 	$(MAKE) -C zlib cleanall
 zlib_info:
 	$(MAKE) -C zlib info
+zlib_makefile:
+	$(MAKE) -C zlib makefile
+zlib_makefiles:
+	$(MAKE) -C zlib makefiles
+zlib_makefile_dirs:
+	$(MAKE) -C zlib makefile_dirs
 zlib:
 	$(MAKE) -C zlib all
-.PHONY: zlib_all zlib_debug zlib_smart 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
+.PHONY: zlib_all zlib_debug zlib_smart 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_makefile zlib_makefiles zlib_makefile_dirs zlib
 endif
 ifdef TARGET_DIRS_NCURSES
 ncurses_all:
@@ -1128,9 +1158,15 @@ ncurses_cleanall:
 	$(MAKE) -C ncurses cleanall
 ncurses_info:
 	$(MAKE) -C ncurses info
+ncurses_makefile:
+	$(MAKE) -C ncurses makefile
+ncurses_makefiles:
+	$(MAKE) -C ncurses makefiles
+ncurses_makefile_dirs:
+	$(MAKE) -C ncurses makefile_dirs
 ncurses:
 	$(MAKE) -C ncurses all
-.PHONY: ncurses_all ncurses_debug ncurses_smart 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
+.PHONY: ncurses_all ncurses_debug ncurses_smart 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_makefile ncurses_makefiles ncurses_makefile_dirs ncurses
 endif
 ifdef TARGET_DIRS_X11
 x11_all:
@@ -1167,9 +1203,15 @@ x11_cleanall:
 	$(MAKE) -C x11 cleanall
 x11_info:
 	$(MAKE) -C x11 info
+x11_makefile:
+	$(MAKE) -C x11 makefile
+x11_makefiles:
+	$(MAKE) -C x11 makefiles
+x11_makefile_dirs:
+	$(MAKE) -C x11 makefile_dirs
 x11:
 	$(MAKE) -C x11 all
-.PHONY: x11_all x11_debug x11_smart 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
+.PHONY: x11_all x11_debug x11_smart 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_makefile x11_makefiles x11_makefile_dirs x11
 endif
 ifdef TARGET_DIRS_GTK
 gtk_all:
@@ -1206,9 +1248,15 @@ gtk_cleanall:
 	$(MAKE) -C gtk cleanall
 gtk_info:
 	$(MAKE) -C gtk info
+gtk_makefile:
+	$(MAKE) -C gtk makefile
+gtk_makefiles:
+	$(MAKE) -C gtk makefiles
+gtk_makefile_dirs:
+	$(MAKE) -C gtk makefile_dirs
 gtk:
 	$(MAKE) -C gtk all
-.PHONY: gtk_all gtk_debug gtk_smart 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
+.PHONY: gtk_all gtk_debug gtk_smart 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_makefile gtk_makefiles gtk_makefile_dirs gtk
 endif
 ifdef TARGET_DIRS_SYSLOG
 syslog_all:
@@ -1245,9 +1293,15 @@ syslog_cleanall:
 	$(MAKE) -C syslog cleanall
 syslog_info:
 	$(MAKE) -C syslog info
+syslog_makefile:
+	$(MAKE) -C syslog makefile
+syslog_makefiles:
+	$(MAKE) -C syslog makefiles
+syslog_makefile_dirs:
+	$(MAKE) -C syslog makefile_dirs
 syslog:
 	$(MAKE) -C syslog all
-.PHONY: syslog_all syslog_debug syslog_smart 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
+.PHONY: syslog_all syslog_debug syslog_smart 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_makefile syslog_makefiles syslog_makefile_dirs syslog
 endif
 ifdef TARGET_DIRS_INET
 inet_all:
@@ -1284,9 +1338,15 @@ inet_cleanall:
 	$(MAKE) -C inet cleanall
 inet_info:
 	$(MAKE) -C inet info
+inet_makefile:
+	$(MAKE) -C inet makefile
+inet_makefiles:
+	$(MAKE) -C inet makefiles
+inet_makefile_dirs:
+	$(MAKE) -C inet makefile_dirs
 inet:
 	$(MAKE) -C inet all
-.PHONY: inet_all inet_debug inet_smart 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
+.PHONY: inet_all inet_debug inet_smart 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_makefile inet_makefiles inet_makefile_dirs inet
 endif
 ifdef TARGET_DIRS_UNCGI
 uncgi_all:
@@ -1323,9 +1383,15 @@ uncgi_cleanall:
 	$(MAKE) -C uncgi cleanall
 uncgi_info:
 	$(MAKE) -C uncgi info
+uncgi_makefile:
+	$(MAKE) -C uncgi makefile
+uncgi_makefiles:
+	$(MAKE) -C uncgi makefiles
+uncgi_makefile_dirs:
+	$(MAKE) -C uncgi makefile_dirs
 uncgi:
 	$(MAKE) -C uncgi all
-.PHONY: uncgi_all uncgi_debug uncgi_smart 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
+.PHONY: uncgi_all uncgi_debug uncgi_smart 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_makefile uncgi_makefiles uncgi_makefile_dirs uncgi
 endif
 ifdef TARGET_DIRS_MYSQL
 mysql_all:
@@ -1362,9 +1428,15 @@ mysql_cleanall:
 	$(MAKE) -C mysql cleanall
 mysql_info:
 	$(MAKE) -C mysql info
+mysql_makefile:
+	$(MAKE) -C mysql makefile
+mysql_makefiles:
+	$(MAKE) -C mysql makefiles
+mysql_makefile_dirs:
+	$(MAKE) -C mysql makefile_dirs
 mysql:
 	$(MAKE) -C mysql all
-.PHONY: mysql_all mysql_debug mysql_smart 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
+.PHONY: mysql_all mysql_debug mysql_smart 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_makefile mysql_makefiles mysql_makefile_dirs mysql
 endif
 ifdef TARGET_DIRS_IBASE
 ibase_all:
@@ -1401,9 +1473,15 @@ ibase_cleanall:
 	$(MAKE) -C ibase cleanall
 ibase_info:
 	$(MAKE) -C ibase info
+ibase_makefile:
+	$(MAKE) -C ibase makefile
+ibase_makefiles:
+	$(MAKE) -C ibase makefiles
+ibase_makefile_dirs:
+	$(MAKE) -C ibase makefile_dirs
 ibase:
 	$(MAKE) -C ibase all
-.PHONY: ibase_all ibase_debug ibase_smart 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
+.PHONY: ibase_all ibase_debug ibase_smart 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_makefile ibase_makefiles ibase_makefile_dirs ibase
 endif
 ifdef TARGET_DIRS_POSTGRES
 postgres_all:
@@ -1440,9 +1518,15 @@ postgres_cleanall:
 	$(MAKE) -C postgres cleanall
 postgres_info:
 	$(MAKE) -C postgres info
+postgres_makefile:
+	$(MAKE) -C postgres makefile
+postgres_makefiles:
+	$(MAKE) -C postgres makefiles
+postgres_makefile_dirs:
+	$(MAKE) -C postgres makefile_dirs
 postgres:
 	$(MAKE) -C postgres all
-.PHONY: postgres_all postgres_debug postgres_smart 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
+.PHONY: postgres_all postgres_debug postgres_smart 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_makefile postgres_makefiles postgres_makefile_dirs postgres
 endif
 ifdef TARGET_DIRS_ORACLE
 oracle_all:
@@ -1479,9 +1563,15 @@ oracle_cleanall:
 	$(MAKE) -C oracle cleanall
 oracle_info:
 	$(MAKE) -C oracle info
+oracle_makefile:
+	$(MAKE) -C oracle makefile
+oracle_makefiles:
+	$(MAKE) -C oracle makefiles
+oracle_makefile_dirs:
+	$(MAKE) -C oracle makefile_dirs
 oracle:
 	$(MAKE) -C oracle all
-.PHONY: oracle_all oracle_debug oracle_smart 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
+.PHONY: oracle_all oracle_debug oracle_smart 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_makefile oracle_makefiles oracle_makefile_dirs oracle
 endif
 ifdef TARGET_DIRS_OPENGL
 opengl_all:
@@ -1518,9 +1608,15 @@ opengl_cleanall:
 	$(MAKE) -C opengl cleanall
 opengl_info:
 	$(MAKE) -C opengl info
+opengl_makefile:
+	$(MAKE) -C opengl makefile
+opengl_makefiles:
+	$(MAKE) -C opengl makefiles
+opengl_makefile_dirs:
+	$(MAKE) -C opengl makefile_dirs
 opengl:
 	$(MAKE) -C opengl all
-.PHONY: opengl_all opengl_debug opengl_smart 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
+.PHONY: opengl_all opengl_debug opengl_smart 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_makefile opengl_makefiles opengl_makefile_dirs opengl
 endif
 ifdef TARGET_DIRS_FORMS
 forms_all:
@@ -1557,9 +1653,15 @@ forms_cleanall:
 	$(MAKE) -C forms cleanall
 forms_info:
 	$(MAKE) -C forms info
+forms_makefile:
+	$(MAKE) -C forms makefile
+forms_makefiles:
+	$(MAKE) -C forms makefiles
+forms_makefile_dirs:
+	$(MAKE) -C forms makefile_dirs
 forms:
 	$(MAKE) -C forms all
-.PHONY: forms_all forms_debug forms_smart 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
+.PHONY: forms_all forms_debug forms_smart 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_makefile forms_makefiles forms_makefile_dirs forms
 endif
 ifdef TARGET_DIRS_SVGALIB
 svgalib_all:
@@ -1596,9 +1698,15 @@ svgalib_cleanall:
 	$(MAKE) -C svgalib cleanall
 svgalib_info:
 	$(MAKE) -C svgalib info
+svgalib_makefile:
+	$(MAKE) -C svgalib makefile
+svgalib_makefiles:
+	$(MAKE) -C svgalib makefiles
+svgalib_makefile_dirs:
+	$(MAKE) -C svgalib makefile_dirs
 svgalib:
 	$(MAKE) -C svgalib all
-.PHONY: svgalib_all svgalib_debug svgalib_smart 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
+.PHONY: svgalib_all svgalib_debug svgalib_smart 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_makefile svgalib_makefiles svgalib_makefile_dirs svgalib
 endif
 ifdef TARGET_DIRS_GGI
 ggi_all:
@@ -1635,9 +1743,15 @@ ggi_cleanall:
 	$(MAKE) -C ggi cleanall
 ggi_info:
 	$(MAKE) -C ggi info
+ggi_makefile:
+	$(MAKE) -C ggi makefile
+ggi_makefiles:
+	$(MAKE) -C ggi makefiles
+ggi_makefile_dirs:
+	$(MAKE) -C ggi makefile_dirs
 ggi:
 	$(MAKE) -C ggi all
-.PHONY: ggi_all ggi_debug ggi_smart 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
+.PHONY: ggi_all ggi_debug ggi_smart 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_makefile ggi_makefiles ggi_makefile_dirs ggi
 endif
 ifdef TARGET_DIRS_LIBPNG
 libpng_all:
@@ -1674,9 +1788,15 @@ libpng_cleanall:
 	$(MAKE) -C libpng cleanall
 libpng_info:
 	$(MAKE) -C libpng info
+libpng_makefile:
+	$(MAKE) -C libpng makefile
+libpng_makefiles:
+	$(MAKE) -C libpng makefiles
+libpng_makefile_dirs:
+	$(MAKE) -C libpng makefile_dirs
 libpng:
 	$(MAKE) -C libpng all
-.PHONY: libpng_all libpng_debug libpng_smart 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
+.PHONY: libpng_all libpng_debug libpng_smart 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_makefile libpng_makefiles libpng_makefile_dirs libpng
 endif
 ifdef TARGET_DIRS_LIBGD
 libgd_all:
@@ -1713,9 +1833,15 @@ libgd_cleanall:
 	$(MAKE) -C libgd cleanall
 libgd_info:
 	$(MAKE) -C libgd info
+libgd_makefile:
+	$(MAKE) -C libgd makefile
+libgd_makefiles:
+	$(MAKE) -C libgd makefiles
+libgd_makefile_dirs:
+	$(MAKE) -C libgd makefile_dirs
 libgd:
 	$(MAKE) -C libgd all
-.PHONY: libgd_all libgd_debug libgd_smart 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
+.PHONY: libgd_all libgd_debug libgd_smart 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_makefile libgd_makefiles libgd_makefile_dirs libgd
 endif
 ifdef TARGET_DIRS_UTMP
 utmp_all:
@@ -1752,9 +1878,15 @@ utmp_cleanall:
 	$(MAKE) -C utmp cleanall
 utmp_info:
 	$(MAKE) -C utmp info
+utmp_makefile:
+	$(MAKE) -C utmp makefile
+utmp_makefiles:
+	$(MAKE) -C utmp makefiles
+utmp_makefile_dirs:
+	$(MAKE) -C utmp makefile_dirs
 utmp:
 	$(MAKE) -C utmp all
-.PHONY: utmp_all utmp_debug utmp_smart 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
+.PHONY: utmp_all utmp_debug utmp_smart 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_makefile utmp_makefiles utmp_makefile_dirs utmp
 endif
 ifdef TARGET_DIRS_PASZLIB
 paszlib_all:
@@ -1791,9 +1923,15 @@ paszlib_cleanall:
 	$(MAKE) -C paszlib cleanall
 paszlib_info:
 	$(MAKE) -C paszlib info
+paszlib_makefile:
+	$(MAKE) -C paszlib makefile
+paszlib_makefiles:
+	$(MAKE) -C paszlib makefiles
+paszlib_makefile_dirs:
+	$(MAKE) -C paszlib makefile_dirs
 paszlib:
 	$(MAKE) -C paszlib all
-.PHONY: paszlib_all paszlib_debug paszlib_smart 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
+.PHONY: paszlib_all paszlib_debug paszlib_smart 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_makefile paszlib_makefiles paszlib_makefile_dirs paszlib
 endif
 ifdef TARGET_DIRS_GDBINT
 gdbint_all:
@@ -1830,9 +1968,15 @@ gdbint_cleanall:
 	$(MAKE) -C gdbint cleanall
 gdbint_info:
 	$(MAKE) -C gdbint info
+gdbint_makefile:
+	$(MAKE) -C gdbint makefile
+gdbint_makefiles:
+	$(MAKE) -C gdbint makefiles
+gdbint_makefile_dirs:
+	$(MAKE) -C gdbint makefile_dirs
 gdbint:
 	$(MAKE) -C gdbint all
-.PHONY: gdbint_all gdbint_debug gdbint_smart 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
+.PHONY: gdbint_all gdbint_debug gdbint_smart 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_makefile gdbint_makefiles gdbint_makefile_dirs gdbint
 endif
 ifdef TARGET_DIRS_CMEM
 cmem_all:
@@ -1869,9 +2013,15 @@ cmem_cleanall:
 	$(MAKE) -C cmem cleanall
 cmem_info:
 	$(MAKE) -C cmem info
+cmem_makefile:
+	$(MAKE) -C cmem makefile
+cmem_makefiles:
+	$(MAKE) -C cmem makefiles
+cmem_makefile_dirs:
+	$(MAKE) -C cmem makefile_dirs
 cmem:
 	$(MAKE) -C cmem all
-.PHONY: cmem_all cmem_debug cmem_smart 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
+.PHONY: cmem_all cmem_debug cmem_smart 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_makefile cmem_makefiles cmem_makefile_dirs cmem
 endif
 ifdef TARGET_DIRS_REGEXPR
 regexpr_all:
@@ -1908,9 +2058,15 @@ regexpr_cleanall:
 	$(MAKE) -C regexpr cleanall
 regexpr_info:
 	$(MAKE) -C regexpr info
+regexpr_makefile:
+	$(MAKE) -C regexpr makefile
+regexpr_makefiles:
+	$(MAKE) -C regexpr makefiles
+regexpr_makefile_dirs:
+	$(MAKE) -C regexpr makefile_dirs
 regexpr:
 	$(MAKE) -C regexpr all
-.PHONY: regexpr_all regexpr_debug regexpr_smart 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
+.PHONY: regexpr_all regexpr_debug regexpr_smart 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_makefile regexpr_makefiles regexpr_makefile_dirs regexpr
 endif
 ifdef TARGET_DIRS_UNZIP
 unzip_all:
@@ -1947,9 +2103,15 @@ unzip_cleanall:
 	$(MAKE) -C unzip cleanall
 unzip_info:
 	$(MAKE) -C unzip info
+unzip_makefile:
+	$(MAKE) -C unzip makefile
+unzip_makefiles:
+	$(MAKE) -C unzip makefiles
+unzip_makefile_dirs:
+	$(MAKE) -C unzip makefile_dirs
 unzip:
 	$(MAKE) -C unzip all
-.PHONY: unzip_all unzip_debug unzip_smart 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
+.PHONY: unzip_all unzip_debug unzip_smart 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_makefile unzip_makefiles unzip_makefile_dirs unzip
 endif
 ifdef TARGET_DIRS_MMSYSTEM
 mmsystem_all:
@@ -1986,9 +2148,15 @@ mmsystem_cleanall:
 	$(MAKE) -C mmsystem cleanall
 mmsystem_info:
 	$(MAKE) -C mmsystem info
+mmsystem_makefile:
+	$(MAKE) -C mmsystem makefile
+mmsystem_makefiles:
+	$(MAKE) -C mmsystem makefiles
+mmsystem_makefile_dirs:
+	$(MAKE) -C mmsystem makefile_dirs
 mmsystem:
 	$(MAKE) -C mmsystem all
-.PHONY: mmsystem_all mmsystem_debug mmsystem_smart 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
+.PHONY: mmsystem_all mmsystem_debug mmsystem_smart 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_makefile mmsystem_makefiles mmsystem_makefile_dirs mmsystem
 endif
 ifdef TARGET_DIRS_ASYNCIO
 asyncio_all:
@@ -2025,9 +2193,15 @@ asyncio_cleanall:
 	$(MAKE) -C asyncio cleanall
 asyncio_info:
 	$(MAKE) -C asyncio info
+asyncio_makefile:
+	$(MAKE) -C asyncio makefile
+asyncio_makefiles:
+	$(MAKE) -C asyncio makefiles
+asyncio_makefile_dirs:
+	$(MAKE) -C asyncio makefile_dirs
 asyncio:
 	$(MAKE) -C asyncio all
-.PHONY: asyncio_all asyncio_debug asyncio_smart 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
+.PHONY: asyncio_all asyncio_debug asyncio_smart 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_makefile asyncio_makefiles asyncio_makefile_dirs asyncio
 endif
 ifdef TARGET_DIRS_BFD
 bfd_all:
@@ -2064,9 +2238,15 @@ bfd_cleanall:
 	$(MAKE) -C bfd cleanall
 bfd_info:
 	$(MAKE) -C bfd info
+bfd_makefile:
+	$(MAKE) -C bfd makefile
+bfd_makefiles:
+	$(MAKE) -C bfd makefiles
+bfd_makefile_dirs:
+	$(MAKE) -C bfd makefile_dirs
 bfd:
 	$(MAKE) -C bfd all
-.PHONY: bfd_all bfd_debug bfd_smart 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
+.PHONY: bfd_all bfd_debug bfd_smart 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_makefile bfd_makefiles bfd_makefile_dirs bfd
 endif
 ifdef TARGET_DIRS_GDBM
 gdbm_all:
@@ -2103,9 +2283,15 @@ gdbm_cleanall:
 	$(MAKE) -C gdbm cleanall
 gdbm_info:
 	$(MAKE) -C gdbm info
+gdbm_makefile:
+	$(MAKE) -C gdbm makefile
+gdbm_makefiles:
+	$(MAKE) -C gdbm makefiles
+gdbm_makefile_dirs:
+	$(MAKE) -C gdbm makefile_dirs
 gdbm:
 	$(MAKE) -C gdbm all
-.PHONY: gdbm_all gdbm_debug gdbm_smart 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
+.PHONY: gdbm_all gdbm_debug gdbm_smart 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_makefile gdbm_makefiles gdbm_makefile_dirs gdbm
 endif
 all: $(addsuffix _all,$(TARGET_DIRS))
 debug: $(addsuffix _debug,$(TARGET_DIRS))
@@ -2124,7 +2310,10 @@ clean: $(addsuffix _clean,$(TARGET_DIRS))
 distclean: $(addsuffix _distclean,$(TARGET_DIRS))
 cleanall: $(addsuffix _cleanall,$(TARGET_DIRS))
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile $(addsuffix _makefile,$(TARGET_DIRS))
+makefiles: fpc_makefiles $(addsuffix _makefiles,$(TARGET_DIRS))
+makefile_dirs: fpc_makefile_dirs $(addsuffix _makefile_dirs,$(TARGET_DIRS))
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 66 - 14
packages/asyncio/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -119,6 +119,14 @@ 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)
@@ -173,6 +181,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -183,6 +194,14 @@ 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
@@ -814,12 +833,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -853,7 +873,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -867,12 +887,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -899,6 +920,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -942,9 +979,15 @@ libasync_cleanall:
 	$(MAKE) -C libasync cleanall
 libasync_info:
 	$(MAKE) -C libasync info
+libasync_makefile:
+	$(MAKE) -C libasync makefile
+libasync_makefiles:
+	$(MAKE) -C libasync makefiles
+libasync_makefile_dirs:
+	$(MAKE) -C libasync makefile_dirs
 libasync:
 	$(MAKE) -C libasync all
-.PHONY: libasync_all libasync_debug libasync_smart 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
+.PHONY: libasync_all libasync_debug libasync_smart 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_makefile libasync_makefiles libasync_makefile_dirs libasync
 endif
 ifdef TARGET_DIRS_FPASYNC
 fpasync_all:
@@ -981,9 +1024,15 @@ fpasync_cleanall:
 	$(MAKE) -C fpasync cleanall
 fpasync_info:
 	$(MAKE) -C fpasync info
+fpasync_makefile:
+	$(MAKE) -C fpasync makefile
+fpasync_makefiles:
+	$(MAKE) -C fpasync makefiles
+fpasync_makefile_dirs:
+	$(MAKE) -C fpasync makefile_dirs
 fpasync:
 	$(MAKE) -C fpasync all
-.PHONY: fpasync_all fpasync_debug fpasync_smart 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
+.PHONY: fpasync_all fpasync_debug fpasync_smart 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_makefile fpasync_makefiles fpasync_makefile_dirs fpasync
 endif
 all: $(addsuffix _all,$(TARGET_DIRS))
 debug: $(addsuffix _debug,$(TARGET_DIRS))
@@ -1002,7 +1051,10 @@ clean: $(addsuffix _clean,$(TARGET_DIRS))
 distclean: $(addsuffix _distclean,$(TARGET_DIRS))
 cleanall: $(addsuffix _cleanall,$(TARGET_DIRS))
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile $(addsuffix _makefile,$(TARGET_DIRS))
+makefiles: fpc_makefiles $(addsuffix _makefiles,$(TARGET_DIRS))
+makefile_dirs: fpc_makefile_dirs $(addsuffix _makefile_dirs,$(TARGET_DIRS))
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 85 - 55
packages/asyncio/fpasync/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -188,6 +189,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -198,6 +202,14 @@ 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
@@ -742,15 +754,22 @@ 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:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -770,14 +789,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
 ifdef REQUIRE_PACKAGES_PASZLIB
-PACKAGEDIR_PASZLIB:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /paszlib/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_PASZLIB:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /paszlib/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_PASZLIB),)
-PACKAGEDIR_PASZLIB:=$(firstword $(PACKAGEDIR_PASZLIB))
-ifeq ($(wildcard $(PACKAGEDIR_PASZLIB)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_paszlib
-package_paszlib:
+override COMPILEPACKAGES+=$(PACKAGEDIR_PASZLIB)/$(FPCMADE)
+$(PACKAGEDIR_PASZLIB)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_PASZLIB) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_PASZLIB)/$(OS_TARGET)),)
 UNITDIR_PASZLIB=$(PACKAGEDIR_PASZLIB)/$(OS_TARGET)
 else
@@ -797,14 +813,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_PASZLIB)
 endif
 endif
 ifdef REQUIRE_PACKAGES_INET
-PACKAGEDIR_INET:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /inet/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_INET:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /inet/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_INET),)
-PACKAGEDIR_INET:=$(firstword $(PACKAGEDIR_INET))
-ifeq ($(wildcard $(PACKAGEDIR_INET)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_inet
-package_inet:
+override COMPILEPACKAGES+=$(PACKAGEDIR_INET)/$(FPCMADE)
+$(PACKAGEDIR_INET)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_INET) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_INET)/$(OS_TARGET)),)
 UNITDIR_INET=$(PACKAGEDIR_INET)/$(OS_TARGET)
 else
@@ -824,14 +837,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_INET)
 endif
 endif
 ifdef REQUIRE_PACKAGES_FCL
-PACKAGEDIR_FCL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fcl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_FCL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fcl/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_FCL),)
-PACKAGEDIR_FCL:=$(firstword $(PACKAGEDIR_FCL))
-ifeq ($(wildcard $(PACKAGEDIR_FCL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_fcl
-package_fcl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_FCL)/$(FPCMADE)
+$(PACKAGEDIR_FCL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_FCL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_FCL)/$(OS_TARGET)),)
 UNITDIR_FCL=$(PACKAGEDIR_FCL)/$(OS_TARGET)
 else
@@ -851,14 +861,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_FCL)
 endif
 endif
 ifdef REQUIRE_PACKAGES_MYSQL
-PACKAGEDIR_MYSQL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /mysql/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_MYSQL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /mysql/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_MYSQL),)
-PACKAGEDIR_MYSQL:=$(firstword $(PACKAGEDIR_MYSQL))
-ifeq ($(wildcard $(PACKAGEDIR_MYSQL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_mysql
-package_mysql:
+override COMPILEPACKAGES+=$(PACKAGEDIR_MYSQL)/$(FPCMADE)
+$(PACKAGEDIR_MYSQL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_MYSQL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_MYSQL)/$(OS_TARGET)),)
 UNITDIR_MYSQL=$(PACKAGEDIR_MYSQL)/$(OS_TARGET)
 else
@@ -878,14 +885,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_MYSQL)
 endif
 endif
 ifdef REQUIRE_PACKAGES_IBASE
-PACKAGEDIR_IBASE:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /ibase/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_IBASE:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /ibase/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_IBASE),)
-PACKAGEDIR_IBASE:=$(firstword $(PACKAGEDIR_IBASE))
-ifeq ($(wildcard $(PACKAGEDIR_IBASE)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_ibase
-package_ibase:
+override COMPILEPACKAGES+=$(PACKAGEDIR_IBASE)/$(FPCMADE)
+$(PACKAGEDIR_IBASE)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_IBASE) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_IBASE)/$(OS_TARGET)),)
 UNITDIR_IBASE=$(PACKAGEDIR_IBASE)/$(OS_TARGET)
 else
@@ -904,7 +908,6 @@ ifdef UNITDIR_IBASE
 override COMPILER_UNITDIR+=$(UNITDIR_IBASE)
 endif
 endif
-.PHONY: package_rtl package_paszlib package_inet package_fcl package_mysql package_ibase
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -1024,8 +1027,9 @@ endif
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 ifdef TARGET_RSTS
@@ -1041,7 +1045,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -1054,6 +1058,8 @@ fpc_debug:
 %$(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)
@@ -1061,6 +1067,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -1241,12 +1250,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1280,7 +1290,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1294,12 +1304,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1326,6 +1337,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1343,7 +1370,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 66 - 25
packages/asyncio/libasync/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -187,6 +188,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -197,6 +201,14 @@ 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
@@ -700,15 +712,18 @@ 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:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -727,7 +742,6 @@ ifdef UNITDIR_RTL
 override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
-.PHONY: package_rtl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -841,8 +855,9 @@ endif
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 ifdef TARGET_RSTS
@@ -858,7 +873,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -871,6 +886,8 @@ fpc_debug:
 %$(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)
@@ -878,6 +895,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -1058,12 +1078,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1097,7 +1118,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1111,12 +1132,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1143,6 +1165,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1160,7 +1198,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 66 - 25
packages/cmem/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -180,6 +181,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -190,6 +194,14 @@ 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
@@ -693,15 +705,18 @@ 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:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -720,7 +735,6 @@ ifdef UNITDIR_RTL
 override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
-.PHONY: package_rtl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -834,8 +848,9 @@ endif
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 ifdef TARGET_RSTS
@@ -866,7 +881,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -879,6 +894,8 @@ fpc_debug:
 %$(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)
@@ -886,6 +903,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -1066,12 +1086,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1105,7 +1126,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1119,12 +1140,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1151,6 +1173,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1168,7 +1206,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 78 - 32
packages/forms/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -181,6 +182,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -191,6 +195,14 @@ 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
@@ -717,15 +729,20 @@ 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:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -745,14 +762,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
 ifdef REQUIRE_PACKAGES_X11
-PACKAGEDIR_X11:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /x11/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_X11:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /x11/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_X11),)
-PACKAGEDIR_X11:=$(firstword $(PACKAGEDIR_X11))
-ifeq ($(wildcard $(PACKAGEDIR_X11)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_x11
-package_x11:
+override COMPILEPACKAGES+=$(PACKAGEDIR_X11)/$(FPCMADE)
+$(PACKAGEDIR_X11)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_X11) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_X11)/$(OS_TARGET)),)
 UNITDIR_X11=$(PACKAGEDIR_X11)/$(OS_TARGET)
 else
@@ -771,7 +785,6 @@ ifdef UNITDIR_X11
 override COMPILER_UNITDIR+=$(UNITDIR_X11)
 endif
 endif
-.PHONY: package_rtl package_x11
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -891,8 +904,9 @@ endif
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 .PHONY: fpc_exes
@@ -935,7 +949,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -948,6 +962,8 @@ fpc_debug:
 %$(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)
@@ -955,6 +971,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -1135,12 +1154,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1174,7 +1194,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1188,12 +1208,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1220,6 +1241,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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:
@@ -1256,9 +1293,15 @@ demo_cleanall:
 	$(MAKE) -C demo cleanall
 demo_info:
 	$(MAKE) -C demo info
+demo_makefile:
+	$(MAKE) -C demo makefile
+demo_makefiles:
+	$(MAKE) -C demo makefiles
+demo_makefile_dirs:
+	$(MAKE) -C demo makefile_dirs
 demo:
 	$(MAKE) -C demo all
-.PHONY: demo_all demo_debug demo_smart 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
+.PHONY: demo_all demo_debug demo_smart 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_makefile demo_makefiles demo_makefile_dirs demo
 endif
 all: fpc_all
 debug: fpc_debug
@@ -1277,7 +1320,10 @@ clean: fpc_clean $(addsuffix _clean,$(TARGET_EXAMPLEDIRS))
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 73 - 35
packages/forms/demo/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -177,6 +178,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -187,6 +191,14 @@ 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
@@ -722,15 +734,22 @@ 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:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -750,14 +769,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
 ifdef REQUIRE_PACKAGES_X11
-PACKAGEDIR_X11:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /x11/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_X11:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /x11/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_X11),)
-PACKAGEDIR_X11:=$(firstword $(PACKAGEDIR_X11))
-ifeq ($(wildcard $(PACKAGEDIR_X11)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_x11
-package_x11:
+override COMPILEPACKAGES+=$(PACKAGEDIR_X11)/$(FPCMADE)
+$(PACKAGEDIR_X11)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_X11) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_X11)/$(OS_TARGET)),)
 UNITDIR_X11=$(PACKAGEDIR_X11)/$(OS_TARGET)
 else
@@ -777,14 +793,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_X11)
 endif
 endif
 ifdef REQUIRE_PACKAGES_FORMS
-PACKAGEDIR_FORMS:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /forms/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_FORMS:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /forms/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_FORMS),)
-PACKAGEDIR_FORMS:=$(firstword $(PACKAGEDIR_FORMS))
-ifeq ($(wildcard $(PACKAGEDIR_FORMS)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_forms
-package_forms:
+override COMPILEPACKAGES+=$(PACKAGEDIR_FORMS)/$(FPCMADE)
+$(PACKAGEDIR_FORMS)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_FORMS) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_FORMS)/$(OS_TARGET)),)
 UNITDIR_FORMS=$(PACKAGEDIR_FORMS)/$(OS_TARGET)
 else
@@ -803,7 +816,6 @@ ifdef UNITDIR_FORMS
 override COMPILER_UNITDIR+=$(UNITDIR_FORMS)
 endif
 endif
-.PHONY: package_rtl package_x11 package_forms
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -944,7 +956,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -957,6 +969,8 @@ fpc_debug:
 %$(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)
@@ -964,6 +978,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -1065,12 +1082,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1104,7 +1122,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1118,12 +1136,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1150,6 +1169,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1167,7 +1202,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 66 - 25
packages/gdbint/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -182,6 +183,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -192,6 +196,14 @@ 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
@@ -709,15 +721,18 @@ 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:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -736,7 +751,6 @@ ifdef UNITDIR_RTL
 override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
-.PHONY: package_rtl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -856,8 +870,9 @@ endif
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 ifdef TARGET_RSTS
@@ -888,7 +903,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -901,6 +916,8 @@ fpc_debug:
 %$(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)
@@ -908,6 +925,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -1088,12 +1108,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1127,7 +1148,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1141,12 +1162,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1173,6 +1195,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1189,7 +1227,10 @@ zipdistinstall: fpc_zipdistinstall
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 52 - 12
packages/gdbint/libgdb/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -119,6 +119,14 @@ 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)
@@ -167,6 +175,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -177,6 +188,14 @@ 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
@@ -808,12 +827,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -847,7 +867,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -861,12 +881,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -893,6 +914,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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:
 examples:
@@ -909,7 +946,10 @@ clean:
 distclean:
 cleanall:
 info: fpc_info
-.PHONY: debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 66 - 25
packages/gdbm/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -180,6 +181,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -190,6 +194,14 @@ 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
@@ -693,15 +705,18 @@ 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:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -720,7 +735,6 @@ ifdef UNITDIR_RTL
 override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
-.PHONY: package_rtl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -834,8 +848,9 @@ endif
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 ifdef TARGET_RSTS
@@ -866,7 +881,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -879,6 +894,8 @@ fpc_debug:
 %$(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)
@@ -886,6 +903,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -1066,12 +1086,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1105,7 +1126,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1119,12 +1140,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1151,6 +1173,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1168,7 +1206,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 66 - 25
packages/ggi/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -180,6 +181,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -190,6 +194,14 @@ 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
@@ -707,15 +719,18 @@ 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:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -734,7 +749,6 @@ ifdef UNITDIR_RTL
 override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
-.PHONY: package_rtl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -854,8 +868,9 @@ endif
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 ifdef TARGET_RSTS
@@ -886,7 +901,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -899,6 +914,8 @@ fpc_debug:
 %$(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)
@@ -906,6 +923,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -1086,12 +1106,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1125,7 +1146,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1139,12 +1160,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1171,6 +1193,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1188,7 +1226,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 88 - 39
packages/gtk/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -183,6 +184,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -193,6 +197,14 @@ 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
@@ -722,15 +734,20 @@ ifeq ($(OS_TARGET),atari)
 REQUIRE_PACKAGES_RTL=1
 REQUIRE_PACKAGES_OPENGL=1
 endif
+ifeq ($(OS_TARGET),sunos)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_OPENGL=1
+endif
+ifeq ($(OS_TARGET),qnx)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_OPENGL=1
+endif
 ifdef REQUIRE_PACKAGES_RTL
-PACKAGEDIR_RTL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -750,14 +767,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
 ifdef REQUIRE_PACKAGES_X11
-PACKAGEDIR_X11:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /x11/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_X11:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /x11/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_X11),)
-PACKAGEDIR_X11:=$(firstword $(PACKAGEDIR_X11))
-ifeq ($(wildcard $(PACKAGEDIR_X11)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_x11
-package_x11:
+override COMPILEPACKAGES+=$(PACKAGEDIR_X11)/$(FPCMADE)
+$(PACKAGEDIR_X11)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_X11) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_X11)/$(OS_TARGET)),)
 UNITDIR_X11=$(PACKAGEDIR_X11)/$(OS_TARGET)
 else
@@ -777,14 +791,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_X11)
 endif
 endif
 ifdef REQUIRE_PACKAGES_OPENGL
-PACKAGEDIR_OPENGL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /opengl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_OPENGL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /opengl/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_OPENGL),)
-PACKAGEDIR_OPENGL:=$(firstword $(PACKAGEDIR_OPENGL))
-ifeq ($(wildcard $(PACKAGEDIR_OPENGL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_opengl
-package_opengl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_OPENGL)/$(FPCMADE)
+$(PACKAGEDIR_OPENGL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_OPENGL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_OPENGL)/$(OS_TARGET)),)
 UNITDIR_OPENGL=$(PACKAGEDIR_OPENGL)/$(OS_TARGET)
 else
@@ -803,7 +814,6 @@ ifdef UNITDIR_OPENGL
 override COMPILER_UNITDIR+=$(UNITDIR_OPENGL)
 endif
 endif
-.PHONY: package_rtl package_x11 package_opengl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -923,8 +933,9 @@ endif
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 ifdef TARGET_RSTS
@@ -955,7 +966,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -968,6 +979,8 @@ fpc_debug:
 %$(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)
@@ -975,6 +988,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -1155,12 +1171,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1194,7 +1211,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1208,12 +1225,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1240,6 +1258,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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_DIRS_GTKGL=1
 ifdef TARGET_DIRS_GTKGL
 gtkgl_all:
@@ -1276,9 +1310,15 @@ gtkgl_cleanall:
 	$(MAKE) -C gtkgl cleanall
 gtkgl_info:
 	$(MAKE) -C gtkgl info
+gtkgl_makefile:
+	$(MAKE) -C gtkgl makefile
+gtkgl_makefiles:
+	$(MAKE) -C gtkgl makefiles
+gtkgl_makefile_dirs:
+	$(MAKE) -C gtkgl makefile_dirs
 gtkgl:
 	$(MAKE) -C gtkgl all
-.PHONY: gtkgl_all gtkgl_debug gtkgl_smart gtkgl_examples gtkgl_shared gtkgl_install gtkgl_sourceinstall gtkgl_exampleinstall gtkgl_distinstall gtkgl_zipinstall gtkgl_zipsourceinstall gtkgl_zipexampleinstall gtkgl_zipdistinstall gtkgl_clean gtkgl_distclean gtkgl_cleanall gtkgl_info gtkgl
+.PHONY: gtkgl_all gtkgl_debug gtkgl_smart gtkgl_examples gtkgl_shared gtkgl_install gtkgl_sourceinstall gtkgl_exampleinstall gtkgl_distinstall gtkgl_zipinstall gtkgl_zipsourceinstall gtkgl_zipexampleinstall gtkgl_zipdistinstall gtkgl_clean gtkgl_distclean gtkgl_cleanall gtkgl_info gtkgl_makefile gtkgl_makefiles gtkgl_makefile_dirs gtkgl
 endif
 TARGET_EXAMPLEDIRS_EXAMPLES=1
 ifdef TARGET_EXAMPLEDIRS_EXAMPLES
@@ -1316,9 +1356,15 @@ examples_cleanall:
 	$(MAKE) -C examples cleanall
 examples_info:
 	$(MAKE) -C examples info
+examples_makefile:
+	$(MAKE) -C examples makefile
+examples_makefiles:
+	$(MAKE) -C examples makefiles
+examples_makefile_dirs:
+	$(MAKE) -C examples makefile_dirs
 examples:
 	$(MAKE) -C examples all
-.PHONY: examples_all examples_debug examples_smart examples_examples examples_shared examples_install examples_sourceinstall examples_exampleinstall examples_distinstall examples_zipinstall examples_zipsourceinstall examples_zipexampleinstall examples_zipdistinstall examples_clean examples_distclean examples_cleanall examples_info examples
+.PHONY: examples_all examples_debug examples_smart examples_examples examples_shared examples_install examples_sourceinstall examples_exampleinstall examples_distinstall examples_zipinstall examples_zipsourceinstall examples_zipexampleinstall examples_zipdistinstall examples_clean examples_distclean examples_cleanall examples_info examples_makefile examples_makefiles examples_makefile_dirs examples
 endif
 all: fpc_all $(addsuffix _all,$(TARGET_DIRS))
 debug: fpc_debug
@@ -1337,7 +1383,10 @@ clean: fpc_clean $(addsuffix _clean,$(TARGET_DIRS)) $(addsuffix _clean,$(TARGET_
 distclean: fpc_distclean $(addsuffix _distclean,$(TARGET_DIRS))
 cleanall: fpc_cleanall $(addsuffix _cleanall,$(TARGET_DIRS))
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 83 - 42
packages/gtk/examples/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -179,6 +180,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -189,6 +193,14 @@ 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
@@ -727,15 +739,22 @@ REQUIRE_PACKAGES_RTL=1
 REQUIRE_PACKAGES_GTK=1
 REQUIRE_PACKAGES_OPENGL=1
 endif
+ifeq ($(OS_TARGET),sunos)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_GTK=1
+REQUIRE_PACKAGES_OPENGL=1
+endif
+ifeq ($(OS_TARGET),qnx)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_GTK=1
+REQUIRE_PACKAGES_OPENGL=1
+endif
 ifdef REQUIRE_PACKAGES_RTL
-PACKAGEDIR_RTL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -755,14 +774,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
 ifdef REQUIRE_PACKAGES_GTK
-PACKAGEDIR_GTK:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /gtk/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_GTK:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /gtk/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_GTK),)
-PACKAGEDIR_GTK:=$(firstword $(PACKAGEDIR_GTK))
-ifeq ($(wildcard $(PACKAGEDIR_GTK)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_gtk
-package_gtk:
+override COMPILEPACKAGES+=$(PACKAGEDIR_GTK)/$(FPCMADE)
+$(PACKAGEDIR_GTK)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_GTK) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_GTK)/$(OS_TARGET)),)
 UNITDIR_GTK=$(PACKAGEDIR_GTK)/$(OS_TARGET)
 else
@@ -782,14 +798,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_GTK)
 endif
 endif
 ifdef REQUIRE_PACKAGES_X11
-PACKAGEDIR_X11:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /x11/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_X11:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /x11/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_X11),)
-PACKAGEDIR_X11:=$(firstword $(PACKAGEDIR_X11))
-ifeq ($(wildcard $(PACKAGEDIR_X11)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_x11
-package_x11:
+override COMPILEPACKAGES+=$(PACKAGEDIR_X11)/$(FPCMADE)
+$(PACKAGEDIR_X11)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_X11) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_X11)/$(OS_TARGET)),)
 UNITDIR_X11=$(PACKAGEDIR_X11)/$(OS_TARGET)
 else
@@ -809,14 +822,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_X11)
 endif
 endif
 ifdef REQUIRE_PACKAGES_OPENGL
-PACKAGEDIR_OPENGL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /opengl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_OPENGL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /opengl/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_OPENGL),)
-PACKAGEDIR_OPENGL:=$(firstword $(PACKAGEDIR_OPENGL))
-ifeq ($(wildcard $(PACKAGEDIR_OPENGL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_opengl
-package_opengl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_OPENGL)/$(FPCMADE)
+$(PACKAGEDIR_OPENGL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_OPENGL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_OPENGL)/$(OS_TARGET)),)
 UNITDIR_OPENGL=$(PACKAGEDIR_OPENGL)/$(OS_TARGET)
 else
@@ -835,7 +845,6 @@ ifdef UNITDIR_OPENGL
 override COMPILER_UNITDIR+=$(UNITDIR_OPENGL)
 endif
 endif
-.PHONY: package_rtl package_gtk package_x11 package_opengl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -976,7 +985,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -989,6 +998,8 @@ fpc_debug:
 %$(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)
@@ -996,6 +1007,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -1097,12 +1111,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1136,7 +1151,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1150,12 +1165,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1182,6 +1198,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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_DIRS_TUTORIAL=1
 ifdef TARGET_DIRS_TUTORIAL
 tutorial_all:
@@ -1218,9 +1250,15 @@ tutorial_cleanall:
 	$(MAKE) -C tutorial cleanall
 tutorial_info:
 	$(MAKE) -C tutorial info
+tutorial_makefile:
+	$(MAKE) -C tutorial makefile
+tutorial_makefiles:
+	$(MAKE) -C tutorial makefiles
+tutorial_makefile_dirs:
+	$(MAKE) -C tutorial makefile_dirs
 tutorial:
 	$(MAKE) -C tutorial all
-.PHONY: tutorial_all tutorial_debug tutorial_smart tutorial_examples tutorial_shared tutorial_install tutorial_sourceinstall tutorial_exampleinstall tutorial_distinstall tutorial_zipinstall tutorial_zipsourceinstall tutorial_zipexampleinstall tutorial_zipdistinstall tutorial_clean tutorial_distclean tutorial_cleanall tutorial_info tutorial
+.PHONY: tutorial_all tutorial_debug tutorial_smart tutorial_examples tutorial_shared tutorial_install tutorial_sourceinstall tutorial_exampleinstall tutorial_distinstall tutorial_zipinstall tutorial_zipsourceinstall tutorial_zipexampleinstall tutorial_zipdistinstall tutorial_clean tutorial_distclean tutorial_cleanall tutorial_info tutorial_makefile tutorial_makefiles tutorial_makefile_dirs tutorial
 endif
 all: fpc_all $(addsuffix _all,$(TARGET_DIRS))
 debug: fpc_debug
@@ -1239,7 +1277,10 @@ clean: fpc_clean $(addsuffix _clean,$(TARGET_DIRS))
 distclean: fpc_distclean $(addsuffix _distclean,$(TARGET_DIRS))
 cleanall: fpc_cleanall $(addsuffix _cleanall,$(TARGET_DIRS))
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile $(addsuffix _makefile,$(TARGET_DIRS))
+makefiles: fpc_makefiles $(addsuffix _makefiles,$(TARGET_DIRS))
+makefile_dirs: fpc_makefile_dirs $(addsuffix _makefile_dirs,$(TARGET_DIRS))
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 65 - 34
packages/gtk/examples/tutorial/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../../../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../../../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -176,6 +177,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -186,6 +190,14 @@ 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
@@ -715,15 +727,20 @@ ifeq ($(OS_TARGET),atari)
 REQUIRE_PACKAGES_GTK=1
 REQUIRE_PACKAGES_OPENGL=1
 endif
+ifeq ($(OS_TARGET),sunos)
+REQUIRE_PACKAGES_GTK=1
+REQUIRE_PACKAGES_OPENGL=1
+endif
+ifeq ($(OS_TARGET),qnx)
+REQUIRE_PACKAGES_GTK=1
+REQUIRE_PACKAGES_OPENGL=1
+endif
 ifdef REQUIRE_PACKAGES_GTK
-PACKAGEDIR_GTK:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /gtk/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_GTK:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /gtk/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_GTK),)
-PACKAGEDIR_GTK:=$(firstword $(PACKAGEDIR_GTK))
-ifeq ($(wildcard $(PACKAGEDIR_GTK)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_gtk
-package_gtk:
+override COMPILEPACKAGES+=$(PACKAGEDIR_GTK)/$(FPCMADE)
+$(PACKAGEDIR_GTK)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_GTK) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_GTK)/$(OS_TARGET)),)
 UNITDIR_GTK=$(PACKAGEDIR_GTK)/$(OS_TARGET)
 else
@@ -743,14 +760,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_GTK)
 endif
 endif
 ifdef REQUIRE_PACKAGES_X11
-PACKAGEDIR_X11:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /x11/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_X11:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /x11/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_X11),)
-PACKAGEDIR_X11:=$(firstword $(PACKAGEDIR_X11))
-ifeq ($(wildcard $(PACKAGEDIR_X11)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_x11
-package_x11:
+override COMPILEPACKAGES+=$(PACKAGEDIR_X11)/$(FPCMADE)
+$(PACKAGEDIR_X11)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_X11) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_X11)/$(OS_TARGET)),)
 UNITDIR_X11=$(PACKAGEDIR_X11)/$(OS_TARGET)
 else
@@ -770,14 +784,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_X11)
 endif
 endif
 ifdef REQUIRE_PACKAGES_OPENGL
-PACKAGEDIR_OPENGL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /opengl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_OPENGL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /opengl/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_OPENGL),)
-PACKAGEDIR_OPENGL:=$(firstword $(PACKAGEDIR_OPENGL))
-ifeq ($(wildcard $(PACKAGEDIR_OPENGL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_opengl
-package_opengl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_OPENGL)/$(FPCMADE)
+$(PACKAGEDIR_OPENGL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_OPENGL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_OPENGL)/$(OS_TARGET)),)
 UNITDIR_OPENGL=$(PACKAGEDIR_OPENGL)/$(OS_TARGET)
 else
@@ -796,7 +807,6 @@ ifdef UNITDIR_OPENGL
 override COMPILER_UNITDIR+=$(UNITDIR_OPENGL)
 endif
 endif
-.PHONY: package_gtk package_x11 package_opengl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -958,12 +968,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -997,7 +1008,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1011,12 +1022,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1043,6 +1055,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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:
 debug:
 smart:
@@ -1060,7 +1088,10 @@ clean:
 distclean:
 cleanall:
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 74 - 37
packages/gtk/gtkgl/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -180,6 +181,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -190,6 +194,14 @@ 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
@@ -719,15 +731,20 @@ ifeq ($(OS_TARGET),atari)
 REQUIRE_PACKAGES_RTL=1
 REQUIRE_PACKAGES_OPENGL=1
 endif
+ifeq ($(OS_TARGET),sunos)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_OPENGL=1
+endif
+ifeq ($(OS_TARGET),qnx)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_OPENGL=1
+endif
 ifdef REQUIRE_PACKAGES_RTL
-PACKAGEDIR_RTL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -747,14 +764,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
 ifdef REQUIRE_PACKAGES_X11
-PACKAGEDIR_X11:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /x11/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_X11:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /x11/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_X11),)
-PACKAGEDIR_X11:=$(firstword $(PACKAGEDIR_X11))
-ifeq ($(wildcard $(PACKAGEDIR_X11)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_x11
-package_x11:
+override COMPILEPACKAGES+=$(PACKAGEDIR_X11)/$(FPCMADE)
+$(PACKAGEDIR_X11)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_X11) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_X11)/$(OS_TARGET)),)
 UNITDIR_X11=$(PACKAGEDIR_X11)/$(OS_TARGET)
 else
@@ -774,14 +788,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_X11)
 endif
 endif
 ifdef REQUIRE_PACKAGES_OPENGL
-PACKAGEDIR_OPENGL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /opengl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_OPENGL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /opengl/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_OPENGL),)
-PACKAGEDIR_OPENGL:=$(firstword $(PACKAGEDIR_OPENGL))
-ifeq ($(wildcard $(PACKAGEDIR_OPENGL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_opengl
-package_opengl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_OPENGL)/$(FPCMADE)
+$(PACKAGEDIR_OPENGL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_OPENGL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_OPENGL)/$(OS_TARGET)),)
 UNITDIR_OPENGL=$(PACKAGEDIR_OPENGL)/$(OS_TARGET)
 else
@@ -800,7 +811,6 @@ ifdef UNITDIR_OPENGL
 override COMPILER_UNITDIR+=$(UNITDIR_OPENGL)
 endif
 endif
-.PHONY: package_rtl package_x11 package_opengl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -920,8 +930,9 @@ endif
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 ifdef TARGET_RSTS
@@ -952,7 +963,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -965,6 +976,8 @@ fpc_debug:
 %$(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)
@@ -972,6 +985,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -1073,12 +1089,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1112,7 +1129,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1126,12 +1143,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1158,6 +1176,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1175,7 +1209,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 66 - 25
packages/ibase/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -180,6 +181,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -190,6 +194,14 @@ 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
@@ -707,15 +719,18 @@ 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:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -734,7 +749,6 @@ ifdef UNITDIR_RTL
 override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
-.PHONY: package_rtl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -854,8 +868,9 @@ endif
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 ifdef TARGET_RSTS
@@ -886,7 +901,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -899,6 +914,8 @@ fpc_debug:
 %$(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)
@@ -906,6 +923,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -1086,12 +1106,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1125,7 +1146,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1139,12 +1160,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1171,6 +1193,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1188,7 +1226,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 66 - 25
packages/inet/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -180,6 +181,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -190,6 +194,14 @@ 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
@@ -693,15 +705,18 @@ 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:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -720,7 +735,6 @@ ifdef UNITDIR_RTL
 override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
-.PHONY: package_rtl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -834,8 +848,9 @@ endif
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 ifdef TARGET_RSTS
@@ -866,7 +881,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -879,6 +894,8 @@ fpc_debug:
 %$(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)
@@ -886,6 +903,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -1066,12 +1086,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1105,7 +1126,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1119,12 +1140,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1151,6 +1173,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1168,7 +1206,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 66 - 25
packages/libgd/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -180,6 +181,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -190,6 +194,14 @@ 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
@@ -707,15 +719,18 @@ 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:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -734,7 +749,6 @@ ifdef UNITDIR_RTL
 override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
-.PHONY: package_rtl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -854,8 +868,9 @@ endif
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 ifdef TARGET_RSTS
@@ -886,7 +901,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -899,6 +914,8 @@ fpc_debug:
 %$(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)
@@ -906,6 +923,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -1086,12 +1106,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1125,7 +1146,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1139,12 +1160,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1171,6 +1193,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1188,7 +1226,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 71 - 31
packages/libpng/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -179,6 +180,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -189,6 +193,14 @@ 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
@@ -715,15 +727,20 @@ ifeq ($(OS_TARGET),atari)
 REQUIRE_PACKAGES_RTL=1
 REQUIRE_PACKAGES_ZLIB=1
 endif
+ifeq ($(OS_TARGET),sunos)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_ZLIB=1
+endif
+ifeq ($(OS_TARGET),qnx)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_ZLIB=1
+endif
 ifdef REQUIRE_PACKAGES_RTL
-PACKAGEDIR_RTL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -743,14 +760,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
 ifdef REQUIRE_PACKAGES_ZLIB
-PACKAGEDIR_ZLIB:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /zlib/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_ZLIB:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /zlib/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_ZLIB),)
-PACKAGEDIR_ZLIB:=$(firstword $(PACKAGEDIR_ZLIB))
-ifeq ($(wildcard $(PACKAGEDIR_ZLIB)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_zlib
-package_zlib:
+override COMPILEPACKAGES+=$(PACKAGEDIR_ZLIB)/$(FPCMADE)
+$(PACKAGEDIR_ZLIB)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_ZLIB) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_ZLIB)/$(OS_TARGET)),)
 UNITDIR_ZLIB=$(PACKAGEDIR_ZLIB)/$(OS_TARGET)
 else
@@ -769,7 +783,6 @@ ifdef UNITDIR_ZLIB
 override COMPILER_UNITDIR+=$(UNITDIR_ZLIB)
 endif
 endif
-.PHONY: package_rtl package_zlib
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -889,8 +902,9 @@ endif
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 ifdef TARGET_RSTS
@@ -906,7 +920,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -919,6 +933,8 @@ fpc_debug:
 %$(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)
@@ -926,6 +942,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -1106,12 +1125,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1145,7 +1165,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1159,12 +1179,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1191,6 +1212,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1208,7 +1245,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 66 - 25
packages/mmsystem/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -179,6 +180,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -189,6 +193,14 @@ 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
@@ -692,15 +704,18 @@ 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:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -719,7 +734,6 @@ ifdef UNITDIR_RTL
 override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
-.PHONY: package_rtl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -833,8 +847,9 @@ endif
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 ifdef TARGET_RSTS
@@ -850,7 +865,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -863,6 +878,8 @@ fpc_debug:
 %$(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)
@@ -870,6 +887,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -1050,12 +1070,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1089,7 +1110,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1103,12 +1124,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1135,6 +1157,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1152,7 +1190,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 66 - 25
packages/mysql/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -180,6 +181,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -190,6 +194,14 @@ 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
@@ -707,15 +719,18 @@ 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:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -734,7 +749,6 @@ ifdef UNITDIR_RTL
 override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
-.PHONY: package_rtl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -854,8 +868,9 @@ endif
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 ifdef TARGET_RSTS
@@ -886,7 +901,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -899,6 +914,8 @@ fpc_debug:
 %$(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)
@@ -906,6 +923,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -1086,12 +1106,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1125,7 +1146,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1139,12 +1160,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1171,6 +1193,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1188,7 +1226,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 66 - 25
packages/ncurses/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -180,6 +181,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -190,6 +194,14 @@ 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
@@ -707,15 +719,18 @@ 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:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -734,7 +749,6 @@ ifdef UNITDIR_RTL
 override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
-.PHONY: package_rtl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -854,8 +868,9 @@ endif
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 ifdef TARGET_RSTS
@@ -886,7 +901,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -899,6 +914,8 @@ fpc_debug:
 %$(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)
@@ -906,6 +923,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -1086,12 +1106,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1125,7 +1146,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1139,12 +1160,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1171,6 +1193,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1188,7 +1226,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 76 - 32
packages/opengl/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -203,6 +204,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -213,6 +217,14 @@ 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
@@ -733,15 +745,18 @@ 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:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -761,14 +776,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
 ifdef REQUIRE_PACKAGES_X11
-PACKAGEDIR_X11:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /x11/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_X11:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /x11/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_X11),)
-PACKAGEDIR_X11:=$(firstword $(PACKAGEDIR_X11))
-ifeq ($(wildcard $(PACKAGEDIR_X11)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_x11
-package_x11:
+override COMPILEPACKAGES+=$(PACKAGEDIR_X11)/$(FPCMADE)
+$(PACKAGEDIR_X11)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_X11) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_X11)/$(OS_TARGET)),)
 UNITDIR_X11=$(PACKAGEDIR_X11)/$(OS_TARGET)
 else
@@ -787,7 +799,6 @@ ifdef UNITDIR_X11
 override COMPILER_UNITDIR+=$(UNITDIR_X11)
 endif
 endif
-.PHONY: package_rtl package_x11
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -907,8 +918,9 @@ endif
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 ifdef TARGET_RSTS
@@ -939,7 +951,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -952,6 +964,8 @@ fpc_debug:
 %$(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)
@@ -959,6 +973,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -1139,12 +1156,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1178,7 +1196,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1192,12 +1210,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1224,6 +1243,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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_EXAMPLES=1
 ifdef TARGET_EXAMPLEDIRS_EXAMPLES
 examples_all:
@@ -1260,9 +1295,15 @@ examples_cleanall:
 	$(MAKE) -C examples cleanall
 examples_info:
 	$(MAKE) -C examples info
+examples_makefile:
+	$(MAKE) -C examples makefile
+examples_makefiles:
+	$(MAKE) -C examples makefiles
+examples_makefile_dirs:
+	$(MAKE) -C examples makefile_dirs
 examples:
 	$(MAKE) -C examples all
-.PHONY: examples_all examples_debug examples_smart examples_examples examples_shared examples_install examples_sourceinstall examples_exampleinstall examples_distinstall examples_zipinstall examples_zipsourceinstall examples_zipexampleinstall examples_zipdistinstall examples_clean examples_distclean examples_cleanall examples_info examples
+.PHONY: examples_all examples_debug examples_smart examples_examples examples_shared examples_install examples_sourceinstall examples_exampleinstall examples_distinstall examples_zipinstall examples_zipsourceinstall examples_zipexampleinstall examples_zipdistinstall examples_clean examples_distclean examples_cleanall examples_info examples_makefile examples_makefiles examples_makefile_dirs examples
 endif
 all: fpc_all
 debug: fpc_debug
@@ -1281,7 +1322,10 @@ clean: fpc_clean $(addsuffix _clean,$(TARGET_EXAMPLEDIRS))
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 85 - 55
packages/opengl/build/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all_units
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -178,6 +179,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -188,6 +192,14 @@ 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
@@ -732,15 +744,22 @@ 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:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -760,14 +779,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
 ifdef REQUIRE_PACKAGES_PASZLIB
-PACKAGEDIR_PASZLIB:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /paszlib/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_PASZLIB:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /paszlib/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_PASZLIB),)
-PACKAGEDIR_PASZLIB:=$(firstword $(PACKAGEDIR_PASZLIB))
-ifeq ($(wildcard $(PACKAGEDIR_PASZLIB)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_paszlib
-package_paszlib:
+override COMPILEPACKAGES+=$(PACKAGEDIR_PASZLIB)/$(FPCMADE)
+$(PACKAGEDIR_PASZLIB)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_PASZLIB) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_PASZLIB)/$(OS_TARGET)),)
 UNITDIR_PASZLIB=$(PACKAGEDIR_PASZLIB)/$(OS_TARGET)
 else
@@ -787,14 +803,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_PASZLIB)
 endif
 endif
 ifdef REQUIRE_PACKAGES_INET
-PACKAGEDIR_INET:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /inet/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_INET:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /inet/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_INET),)
-PACKAGEDIR_INET:=$(firstword $(PACKAGEDIR_INET))
-ifeq ($(wildcard $(PACKAGEDIR_INET)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_inet
-package_inet:
+override COMPILEPACKAGES+=$(PACKAGEDIR_INET)/$(FPCMADE)
+$(PACKAGEDIR_INET)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_INET) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_INET)/$(OS_TARGET)),)
 UNITDIR_INET=$(PACKAGEDIR_INET)/$(OS_TARGET)
 else
@@ -814,14 +827,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_INET)
 endif
 endif
 ifdef REQUIRE_PACKAGES_FCL
-PACKAGEDIR_FCL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fcl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_FCL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fcl/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_FCL),)
-PACKAGEDIR_FCL:=$(firstword $(PACKAGEDIR_FCL))
-ifeq ($(wildcard $(PACKAGEDIR_FCL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_fcl
-package_fcl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_FCL)/$(FPCMADE)
+$(PACKAGEDIR_FCL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_FCL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_FCL)/$(OS_TARGET)),)
 UNITDIR_FCL=$(PACKAGEDIR_FCL)/$(OS_TARGET)
 else
@@ -841,14 +851,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_FCL)
 endif
 endif
 ifdef REQUIRE_PACKAGES_MYSQL
-PACKAGEDIR_MYSQL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /mysql/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_MYSQL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /mysql/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_MYSQL),)
-PACKAGEDIR_MYSQL:=$(firstword $(PACKAGEDIR_MYSQL))
-ifeq ($(wildcard $(PACKAGEDIR_MYSQL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_mysql
-package_mysql:
+override COMPILEPACKAGES+=$(PACKAGEDIR_MYSQL)/$(FPCMADE)
+$(PACKAGEDIR_MYSQL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_MYSQL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_MYSQL)/$(OS_TARGET)),)
 UNITDIR_MYSQL=$(PACKAGEDIR_MYSQL)/$(OS_TARGET)
 else
@@ -868,14 +875,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_MYSQL)
 endif
 endif
 ifdef REQUIRE_PACKAGES_IBASE
-PACKAGEDIR_IBASE:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /ibase/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_IBASE:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /ibase/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_IBASE),)
-PACKAGEDIR_IBASE:=$(firstword $(PACKAGEDIR_IBASE))
-ifeq ($(wildcard $(PACKAGEDIR_IBASE)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_ibase
-package_ibase:
+override COMPILEPACKAGES+=$(PACKAGEDIR_IBASE)/$(FPCMADE)
+$(PACKAGEDIR_IBASE)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_IBASE) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_IBASE)/$(OS_TARGET)),)
 UNITDIR_IBASE=$(PACKAGEDIR_IBASE)/$(OS_TARGET)
 else
@@ -894,7 +898,6 @@ ifdef UNITDIR_IBASE
 override COMPILER_UNITDIR+=$(UNITDIR_IBASE)
 endif
 endif
-.PHONY: package_rtl package_paszlib package_inet package_fcl package_mysql package_ibase
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -1014,8 +1017,9 @@ endif
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 .PHONY: fpc_exes
@@ -1043,7 +1047,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -1056,6 +1060,8 @@ fpc_debug:
 %$(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)
@@ -1063,6 +1069,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -1164,12 +1173,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1203,7 +1213,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1217,12 +1227,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1249,6 +1260,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1266,7 +1293,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 71 - 35
packages/opengl/examples/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -177,6 +178,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -187,6 +191,14 @@ 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
@@ -716,15 +728,20 @@ ifeq ($(OS_TARGET),atari)
 REQUIRE_PACKAGES_RTL=1
 REQUIRE_PACKAGES_OPENGL=1
 endif
+ifeq ($(OS_TARGET),sunos)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_OPENGL=1
+endif
+ifeq ($(OS_TARGET),qnx)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_OPENGL=1
+endif
 ifdef REQUIRE_PACKAGES_RTL
-PACKAGEDIR_RTL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -744,14 +761,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
 ifdef REQUIRE_PACKAGES_X11
-PACKAGEDIR_X11:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /x11/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_X11:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /x11/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_X11),)
-PACKAGEDIR_X11:=$(firstword $(PACKAGEDIR_X11))
-ifeq ($(wildcard $(PACKAGEDIR_X11)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_x11
-package_x11:
+override COMPILEPACKAGES+=$(PACKAGEDIR_X11)/$(FPCMADE)
+$(PACKAGEDIR_X11)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_X11) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_X11)/$(OS_TARGET)),)
 UNITDIR_X11=$(PACKAGEDIR_X11)/$(OS_TARGET)
 else
@@ -771,14 +785,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_X11)
 endif
 endif
 ifdef REQUIRE_PACKAGES_OPENGL
-PACKAGEDIR_OPENGL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /opengl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_OPENGL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /opengl/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_OPENGL),)
-PACKAGEDIR_OPENGL:=$(firstword $(PACKAGEDIR_OPENGL))
-ifeq ($(wildcard $(PACKAGEDIR_OPENGL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_opengl
-package_opengl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_OPENGL)/$(FPCMADE)
+$(PACKAGEDIR_OPENGL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_OPENGL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_OPENGL)/$(OS_TARGET)),)
 UNITDIR_OPENGL=$(PACKAGEDIR_OPENGL)/$(OS_TARGET)
 else
@@ -797,7 +808,6 @@ ifdef UNITDIR_OPENGL
 override COMPILER_UNITDIR+=$(UNITDIR_OPENGL)
 endif
 endif
-.PHONY: package_rtl package_x11 package_opengl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -938,7 +948,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -951,6 +961,8 @@ fpc_debug:
 %$(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)
@@ -958,6 +970,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -1059,12 +1074,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1098,7 +1114,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1112,12 +1128,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1144,6 +1161,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1161,7 +1194,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 73 - 26
packages/oracle/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -180,6 +181,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -190,6 +194,14 @@ 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
@@ -707,15 +719,18 @@ 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:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -734,7 +749,6 @@ ifdef UNITDIR_RTL
 override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
-.PHONY: package_rtl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -854,8 +868,9 @@ endif
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 ifdef TARGET_RSTS
@@ -886,7 +901,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -899,6 +914,8 @@ fpc_debug:
 %$(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)
@@ -906,6 +923,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -1086,12 +1106,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1125,7 +1146,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1139,12 +1160,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1171,6 +1193,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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_EXAMPLE=1
 ifdef TARGET_EXAMPLEDIRS_EXAMPLE
 example_all:
@@ -1207,9 +1245,15 @@ example_cleanall:
 	$(MAKE) -C example cleanall
 example_info:
 	$(MAKE) -C example info
+example_makefile:
+	$(MAKE) -C example makefile
+example_makefiles:
+	$(MAKE) -C example makefiles
+example_makefile_dirs:
+	$(MAKE) -C example makefile_dirs
 example:
 	$(MAKE) -C example all
-.PHONY: example_all example_debug example_smart example_examples example_shared example_install example_sourceinstall example_exampleinstall example_distinstall example_zipinstall example_zipsourceinstall example_zipexampleinstall example_zipdistinstall example_clean example_distclean example_cleanall example_info example
+.PHONY: example_all example_debug example_smart example_examples example_shared example_install example_sourceinstall example_exampleinstall example_distinstall example_zipinstall example_zipsourceinstall example_zipexampleinstall example_zipdistinstall example_clean example_distclean example_cleanall example_info example_makefile example_makefiles example_makefile_dirs example
 endif
 all: fpc_all
 debug: fpc_debug
@@ -1228,7 +1272,10 @@ clean: fpc_clean $(addsuffix _clean,$(TARGET_EXAMPLEDIRS))
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 90 - 61
packages/oracle/example/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -178,6 +179,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -188,6 +192,14 @@ 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
@@ -741,15 +753,24 @@ REQUIRE_PACKAGES_ORACLE=1
 REQUIRE_PACKAGES_PASZLIB=1
 REQUIRE_PACKAGES_FCL=1
 endif
+ifeq ($(OS_TARGET),sunos)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_ORACLE=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL=1
+endif
+ifeq ($(OS_TARGET),qnx)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_ORACLE=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL=1
+endif
 ifdef REQUIRE_PACKAGES_RTL
-PACKAGEDIR_RTL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -769,14 +790,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
 ifdef REQUIRE_PACKAGES_ORACLE
-PACKAGEDIR_ORACLE:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /oracle/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_ORACLE:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /oracle/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_ORACLE),)
-PACKAGEDIR_ORACLE:=$(firstword $(PACKAGEDIR_ORACLE))
-ifeq ($(wildcard $(PACKAGEDIR_ORACLE)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_oracle
-package_oracle:
+override COMPILEPACKAGES+=$(PACKAGEDIR_ORACLE)/$(FPCMADE)
+$(PACKAGEDIR_ORACLE)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_ORACLE) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_ORACLE)/$(OS_TARGET)),)
 UNITDIR_ORACLE=$(PACKAGEDIR_ORACLE)/$(OS_TARGET)
 else
@@ -796,14 +814,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_ORACLE)
 endif
 endif
 ifdef REQUIRE_PACKAGES_PASZLIB
-PACKAGEDIR_PASZLIB:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /paszlib/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_PASZLIB:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /paszlib/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_PASZLIB),)
-PACKAGEDIR_PASZLIB:=$(firstword $(PACKAGEDIR_PASZLIB))
-ifeq ($(wildcard $(PACKAGEDIR_PASZLIB)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_paszlib
-package_paszlib:
+override COMPILEPACKAGES+=$(PACKAGEDIR_PASZLIB)/$(FPCMADE)
+$(PACKAGEDIR_PASZLIB)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_PASZLIB) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_PASZLIB)/$(OS_TARGET)),)
 UNITDIR_PASZLIB=$(PACKAGEDIR_PASZLIB)/$(OS_TARGET)
 else
@@ -823,14 +838,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_PASZLIB)
 endif
 endif
 ifdef REQUIRE_PACKAGES_INET
-PACKAGEDIR_INET:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /inet/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_INET:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /inet/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_INET),)
-PACKAGEDIR_INET:=$(firstword $(PACKAGEDIR_INET))
-ifeq ($(wildcard $(PACKAGEDIR_INET)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_inet
-package_inet:
+override COMPILEPACKAGES+=$(PACKAGEDIR_INET)/$(FPCMADE)
+$(PACKAGEDIR_INET)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_INET) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_INET)/$(OS_TARGET)),)
 UNITDIR_INET=$(PACKAGEDIR_INET)/$(OS_TARGET)
 else
@@ -850,14 +862,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_INET)
 endif
 endif
 ifdef REQUIRE_PACKAGES_FCL
-PACKAGEDIR_FCL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fcl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_FCL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fcl/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_FCL),)
-PACKAGEDIR_FCL:=$(firstword $(PACKAGEDIR_FCL))
-ifeq ($(wildcard $(PACKAGEDIR_FCL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_fcl
-package_fcl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_FCL)/$(FPCMADE)
+$(PACKAGEDIR_FCL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_FCL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_FCL)/$(OS_TARGET)),)
 UNITDIR_FCL=$(PACKAGEDIR_FCL)/$(OS_TARGET)
 else
@@ -877,14 +886,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_FCL)
 endif
 endif
 ifdef REQUIRE_PACKAGES_MYSQL
-PACKAGEDIR_MYSQL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /mysql/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_MYSQL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /mysql/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_MYSQL),)
-PACKAGEDIR_MYSQL:=$(firstword $(PACKAGEDIR_MYSQL))
-ifeq ($(wildcard $(PACKAGEDIR_MYSQL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_mysql
-package_mysql:
+override COMPILEPACKAGES+=$(PACKAGEDIR_MYSQL)/$(FPCMADE)
+$(PACKAGEDIR_MYSQL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_MYSQL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_MYSQL)/$(OS_TARGET)),)
 UNITDIR_MYSQL=$(PACKAGEDIR_MYSQL)/$(OS_TARGET)
 else
@@ -904,14 +910,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_MYSQL)
 endif
 endif
 ifdef REQUIRE_PACKAGES_IBASE
-PACKAGEDIR_IBASE:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /ibase/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_IBASE:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /ibase/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_IBASE),)
-PACKAGEDIR_IBASE:=$(firstword $(PACKAGEDIR_IBASE))
-ifeq ($(wildcard $(PACKAGEDIR_IBASE)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_ibase
-package_ibase:
+override COMPILEPACKAGES+=$(PACKAGEDIR_IBASE)/$(FPCMADE)
+$(PACKAGEDIR_IBASE)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_IBASE) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_IBASE)/$(OS_TARGET)),)
 UNITDIR_IBASE=$(PACKAGEDIR_IBASE)/$(OS_TARGET)
 else
@@ -930,7 +933,6 @@ ifdef UNITDIR_IBASE
 override COMPILER_UNITDIR+=$(UNITDIR_IBASE)
 endif
 endif
-.PHONY: package_rtl package_oracle package_paszlib package_inet package_fcl package_mysql package_ibase
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -1050,8 +1052,9 @@ endif
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 ifdef TARGET_RSTS
@@ -1082,7 +1085,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -1095,6 +1098,8 @@ fpc_debug:
 %$(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)
@@ -1102,6 +1107,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -1203,12 +1211,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1242,7 +1251,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1256,12 +1265,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1288,6 +1298,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1305,7 +1331,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 54 - 25
packages/paszlib/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/13]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -198,6 +199,11 @@ UNIXINSTALLDIR=1
 endif
 endif
 ifndef INSTALL_PREFIX
+ifdef PREFIX
+INSTALL_PREFIX=$(PREFIX)
+endif
+endif
+ifndef INSTALL_PREFIX
 ifdef UNIXINSTALLDIR
 INSTALL_PREFIX=/usr/local
 else
@@ -706,14 +712,11 @@ ifeq ($(OS_TARGET),qnx)
 REQUIRE_PACKAGES_RTL=1
 endif
 ifdef REQUIRE_PACKAGES_RTL
-PACKAGEDIR_RTL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -732,7 +735,6 @@ ifdef UNITDIR_RTL
 override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
-.PHONY: package_rtl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -846,8 +848,9 @@ endif
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 ifdef TARGET_RSTS
@@ -878,7 +881,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -891,6 +894,8 @@ fpc_debug:
 %$(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)
@@ -898,6 +903,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -1078,12 +1086,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1117,7 +1126,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1131,12 +1140,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1163,6 +1173,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1180,7 +1206,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 66 - 25
packages/postgres/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -180,6 +181,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -190,6 +194,14 @@ 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
@@ -707,15 +719,18 @@ 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:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -734,7 +749,6 @@ ifdef UNITDIR_RTL
 override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
-.PHONY: package_rtl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -854,8 +868,9 @@ endif
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 ifdef TARGET_RSTS
@@ -886,7 +901,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -899,6 +914,8 @@ fpc_debug:
 %$(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)
@@ -906,6 +923,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -1086,12 +1106,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1125,7 +1146,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1139,12 +1160,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1171,6 +1193,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1188,7 +1226,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 54 - 25
packages/regexpr/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/13]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -199,6 +200,11 @@ UNIXINSTALLDIR=1
 endif
 endif
 ifndef INSTALL_PREFIX
+ifdef PREFIX
+INSTALL_PREFIX=$(PREFIX)
+endif
+endif
+ifndef INSTALL_PREFIX
 ifdef UNIXINSTALLDIR
 INSTALL_PREFIX=/usr/local
 else
@@ -707,14 +713,11 @@ ifeq ($(OS_TARGET),qnx)
 REQUIRE_PACKAGES_RTL=1
 endif
 ifdef REQUIRE_PACKAGES_RTL
-PACKAGEDIR_RTL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -733,7 +736,6 @@ ifdef UNITDIR_RTL
 override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
-.PHONY: package_rtl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -847,8 +849,9 @@ endif
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 ifdef TARGET_RSTS
@@ -879,7 +882,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -892,6 +895,8 @@ fpc_debug:
 %$(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)
@@ -899,6 +904,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -1079,12 +1087,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1118,7 +1127,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1132,12 +1141,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1164,6 +1174,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1181,7 +1207,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 66 - 25
packages/svgalib/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -180,6 +181,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -190,6 +194,14 @@ 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
@@ -707,15 +719,18 @@ 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:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -734,7 +749,6 @@ ifdef UNITDIR_RTL
 override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
-.PHONY: package_rtl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -854,8 +868,9 @@ endif
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 ifdef TARGET_RSTS
@@ -886,7 +901,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -899,6 +914,8 @@ fpc_debug:
 %$(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)
@@ -906,6 +923,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -1086,12 +1106,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1125,7 +1146,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1139,12 +1160,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1171,6 +1193,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1188,7 +1226,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 66 - 25
packages/syslog/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -180,6 +181,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -190,6 +194,14 @@ 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
@@ -707,15 +719,18 @@ 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:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -734,7 +749,6 @@ ifdef UNITDIR_RTL
 override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
-.PHONY: package_rtl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -854,8 +868,9 @@ endif
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 ifdef TARGET_RSTS
@@ -886,7 +901,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -899,6 +914,8 @@ fpc_debug:
 %$(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)
@@ -906,6 +923,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -1086,12 +1106,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1125,7 +1146,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1139,12 +1160,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1171,6 +1193,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1188,7 +1226,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 66 - 25
packages/uncgi/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -180,6 +181,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -190,6 +194,14 @@ 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
@@ -693,15 +705,18 @@ 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:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -720,7 +735,6 @@ ifdef UNITDIR_RTL
 override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
-.PHONY: package_rtl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -834,8 +848,9 @@ endif
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 ifdef TARGET_RSTS
@@ -866,7 +881,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -879,6 +894,8 @@ fpc_debug:
 %$(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)
@@ -886,6 +903,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -1066,12 +1086,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1105,7 +1126,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1119,12 +1140,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1151,6 +1173,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1167,7 +1205,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 66 - 25
packages/unzip/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -182,6 +183,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -192,6 +196,14 @@ 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
@@ -695,15 +707,18 @@ 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:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -722,7 +737,6 @@ ifdef UNITDIR_RTL
 override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
-.PHONY: package_rtl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -836,8 +850,9 @@ endif
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 ifdef TARGET_RSTS
@@ -853,7 +868,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -866,6 +881,8 @@ fpc_debug:
 %$(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)
@@ -873,6 +890,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -1053,12 +1073,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1092,7 +1113,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1106,12 +1127,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1138,6 +1160,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1155,7 +1193,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 66 - 25
packages/utmp/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -180,6 +181,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -190,6 +194,14 @@ 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
@@ -693,15 +705,18 @@ 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:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -720,7 +735,6 @@ ifdef UNITDIR_RTL
 override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
-.PHONY: package_rtl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -834,8 +848,9 @@ endif
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 ifdef TARGET_RSTS
@@ -866,7 +881,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -879,6 +894,8 @@ fpc_debug:
 %$(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)
@@ -886,6 +903,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -1066,12 +1086,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1105,7 +1126,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1119,12 +1140,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1151,6 +1173,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1168,7 +1206,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 66 - 25
packages/x11/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -179,6 +180,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -189,6 +193,14 @@ 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
@@ -706,15 +718,18 @@ 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:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -733,7 +748,6 @@ ifdef UNITDIR_RTL
 override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
-.PHONY: package_rtl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -853,8 +867,9 @@ endif
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 ifdef TARGET_RSTS
@@ -870,7 +885,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -883,6 +898,8 @@ fpc_debug:
 %$(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)
@@ -890,6 +907,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -1070,12 +1090,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1109,7 +1130,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1123,12 +1144,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1155,6 +1177,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1172,7 +1210,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 66 - 25
packages/zlib/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -179,6 +180,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -189,6 +193,14 @@ 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
@@ -706,15 +718,18 @@ 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:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -733,7 +748,6 @@ ifdef UNITDIR_RTL
 override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
-.PHONY: package_rtl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -853,8 +867,9 @@ endif
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 ifdef TARGET_RSTS
@@ -870,7 +885,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -883,6 +898,8 @@ fpc_debug:
 %$(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)
@@ -890,6 +907,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -1070,12 +1090,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1109,7 +1130,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1123,12 +1144,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1155,6 +1177,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1172,7 +1210,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 130 - 22
rtl/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/10/18]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -38,6 +38,12 @@ 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
@@ -64,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -113,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -194,6 +201,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -204,6 +214,14 @@ 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
@@ -264,10 +282,18 @@ 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)
@@ -279,10 +305,18 @@ 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)
@@ -294,10 +328,18 @@ 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)
@@ -773,6 +815,9 @@ endif
 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))
@@ -953,12 +998,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -992,7 +1038,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1006,12 +1052,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1038,6 +1085,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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_LINUX=1
 endif
@@ -1094,9 +1157,15 @@ linux_cleanall:
 	$(MAKE) -C linux cleanall
 linux_info:
 	$(MAKE) -C linux info
+linux_makefile:
+	$(MAKE) -C linux makefile
+linux_makefiles:
+	$(MAKE) -C linux makefiles
+linux_makefile_dirs:
+	$(MAKE) -C linux makefile_dirs
 linux:
 	$(MAKE) -C linux all
-.PHONY: linux_all linux_debug linux_smart linux_examples linux_shared linux_install linux_sourceinstall linux_exampleinstall linux_distinstall linux_zipinstall linux_zipsourceinstall linux_zipexampleinstall linux_zipdistinstall linux_clean linux_distclean linux_cleanall linux_info linux
+.PHONY: linux_all linux_debug linux_smart linux_examples linux_shared linux_install linux_sourceinstall linux_exampleinstall linux_distinstall linux_zipinstall linux_zipsourceinstall linux_zipexampleinstall linux_zipdistinstall linux_clean linux_distclean linux_cleanall linux_info linux_makefile linux_makefiles linux_makefile_dirs linux
 endif
 ifdef TARGET_DIRS_GO32V2
 go32v2_all:
@@ -1133,9 +1202,15 @@ go32v2_cleanall:
 	$(MAKE) -C go32v2 cleanall
 go32v2_info:
 	$(MAKE) -C go32v2 info
+go32v2_makefile:
+	$(MAKE) -C go32v2 makefile
+go32v2_makefiles:
+	$(MAKE) -C go32v2 makefiles
+go32v2_makefile_dirs:
+	$(MAKE) -C go32v2 makefile_dirs
 go32v2:
 	$(MAKE) -C go32v2 all
-.PHONY: go32v2_all go32v2_debug go32v2_smart go32v2_examples go32v2_shared go32v2_install go32v2_sourceinstall go32v2_exampleinstall go32v2_distinstall go32v2_zipinstall go32v2_zipsourceinstall go32v2_zipexampleinstall go32v2_zipdistinstall go32v2_clean go32v2_distclean go32v2_cleanall go32v2_info go32v2
+.PHONY: go32v2_all go32v2_debug go32v2_smart go32v2_examples go32v2_shared go32v2_install go32v2_sourceinstall go32v2_exampleinstall go32v2_distinstall go32v2_zipinstall go32v2_zipsourceinstall go32v2_zipexampleinstall go32v2_zipdistinstall go32v2_clean go32v2_distclean go32v2_cleanall go32v2_info go32v2_makefile go32v2_makefiles go32v2_makefile_dirs go32v2
 endif
 ifdef TARGET_DIRS_WIN32
 win32_all:
@@ -1172,9 +1247,15 @@ win32_cleanall:
 	$(MAKE) -C win32 cleanall
 win32_info:
 	$(MAKE) -C win32 info
+win32_makefile:
+	$(MAKE) -C win32 makefile
+win32_makefiles:
+	$(MAKE) -C win32 makefiles
+win32_makefile_dirs:
+	$(MAKE) -C win32 makefile_dirs
 win32:
 	$(MAKE) -C win32 all
-.PHONY: win32_all win32_debug win32_smart win32_examples win32_shared win32_install win32_sourceinstall win32_exampleinstall win32_distinstall win32_zipinstall win32_zipsourceinstall win32_zipexampleinstall win32_zipdistinstall win32_clean win32_distclean win32_cleanall win32_info win32
+.PHONY: win32_all win32_debug win32_smart win32_examples win32_shared win32_install win32_sourceinstall win32_exampleinstall win32_distinstall win32_zipinstall win32_zipsourceinstall win32_zipexampleinstall win32_zipdistinstall win32_clean win32_distclean win32_cleanall win32_info win32_makefile win32_makefiles win32_makefile_dirs win32
 endif
 ifdef TARGET_DIRS_OS2
 os2_all:
@@ -1211,9 +1292,15 @@ os2_cleanall:
 	$(MAKE) -C os2 cleanall
 os2_info:
 	$(MAKE) -C os2 info
+os2_makefile:
+	$(MAKE) -C os2 makefile
+os2_makefiles:
+	$(MAKE) -C os2 makefiles
+os2_makefile_dirs:
+	$(MAKE) -C os2 makefile_dirs
 os2:
 	$(MAKE) -C os2 all
-.PHONY: os2_all os2_debug os2_smart os2_examples os2_shared os2_install os2_sourceinstall os2_exampleinstall os2_distinstall os2_zipinstall os2_zipsourceinstall os2_zipexampleinstall os2_zipdistinstall os2_clean os2_distclean os2_cleanall os2_info os2
+.PHONY: os2_all os2_debug os2_smart os2_examples os2_shared os2_install os2_sourceinstall os2_exampleinstall os2_distinstall os2_zipinstall os2_zipsourceinstall os2_zipexampleinstall os2_zipdistinstall os2_clean os2_distclean os2_cleanall os2_info os2_makefile os2_makefiles os2_makefile_dirs os2
 endif
 ifdef TARGET_DIRS_FREEBSD
 freebsd_all:
@@ -1250,9 +1337,15 @@ freebsd_cleanall:
 	$(MAKE) -C freebsd cleanall
 freebsd_info:
 	$(MAKE) -C freebsd info
+freebsd_makefile:
+	$(MAKE) -C freebsd makefile
+freebsd_makefiles:
+	$(MAKE) -C freebsd makefiles
+freebsd_makefile_dirs:
+	$(MAKE) -C freebsd makefile_dirs
 freebsd:
 	$(MAKE) -C freebsd all
-.PHONY: freebsd_all freebsd_debug freebsd_smart freebsd_examples freebsd_shared freebsd_install freebsd_sourceinstall freebsd_exampleinstall freebsd_distinstall freebsd_zipinstall freebsd_zipsourceinstall freebsd_zipexampleinstall freebsd_zipdistinstall freebsd_clean freebsd_distclean freebsd_cleanall freebsd_info freebsd
+.PHONY: freebsd_all freebsd_debug freebsd_smart freebsd_examples freebsd_shared freebsd_install freebsd_sourceinstall freebsd_exampleinstall freebsd_distinstall freebsd_zipinstall freebsd_zipsourceinstall freebsd_zipexampleinstall freebsd_zipdistinstall freebsd_clean freebsd_distclean freebsd_cleanall freebsd_info freebsd_makefile freebsd_makefiles freebsd_makefile_dirs freebsd
 endif
 ifdef TARGET_DIRS_BEOS
 beos_all:
@@ -1289,9 +1382,15 @@ beos_cleanall:
 	$(MAKE) -C beos cleanall
 beos_info:
 	$(MAKE) -C beos info
+beos_makefile:
+	$(MAKE) -C beos makefile
+beos_makefiles:
+	$(MAKE) -C beos makefiles
+beos_makefile_dirs:
+	$(MAKE) -C beos makefile_dirs
 beos:
 	$(MAKE) -C beos all
-.PHONY: beos_all beos_debug beos_smart beos_examples beos_shared beos_install beos_sourceinstall beos_exampleinstall beos_distinstall beos_zipinstall beos_zipsourceinstall beos_zipexampleinstall beos_zipdistinstall beos_clean beos_distclean beos_cleanall beos_info beos
+.PHONY: beos_all beos_debug beos_smart beos_examples beos_shared beos_install beos_sourceinstall beos_exampleinstall beos_distinstall beos_zipinstall beos_zipsourceinstall beos_zipexampleinstall beos_zipdistinstall beos_clean beos_distclean beos_cleanall beos_info beos_makefile beos_makefiles beos_makefile_dirs beos
 endif
 ifdef TARGET_DIRS_AMIGA
 amiga_all:
@@ -1328,9 +1427,15 @@ amiga_cleanall:
 	$(MAKE) -C amiga cleanall
 amiga_info:
 	$(MAKE) -C amiga info
+amiga_makefile:
+	$(MAKE) -C amiga makefile
+amiga_makefiles:
+	$(MAKE) -C amiga makefiles
+amiga_makefile_dirs:
+	$(MAKE) -C amiga makefile_dirs
 amiga:
 	$(MAKE) -C amiga all
-.PHONY: amiga_all amiga_debug amiga_smart amiga_examples amiga_shared amiga_install amiga_sourceinstall amiga_exampleinstall amiga_distinstall amiga_zipinstall amiga_zipsourceinstall amiga_zipexampleinstall amiga_zipdistinstall amiga_clean amiga_distclean amiga_cleanall amiga_info amiga
+.PHONY: amiga_all amiga_debug amiga_smart amiga_examples amiga_shared amiga_install amiga_sourceinstall amiga_exampleinstall amiga_distinstall amiga_zipinstall amiga_zipsourceinstall amiga_zipexampleinstall amiga_zipdistinstall amiga_clean amiga_distclean amiga_cleanall amiga_info amiga_makefile amiga_makefiles amiga_makefile_dirs amiga
 endif
 all: $(addsuffix _all,$(TARGET_DIRS))
 debug: $(addsuffix _debug,$(TARGET_DIRS))
@@ -1349,7 +1454,10 @@ clean: fpc_clean $(addsuffix _clean,$(TARGET_DIRS))
 distclean: fpc_distclean $(addsuffix _distclean,$(TARGET_DIRS))
 cleanall: fpc_cleanall $(addsuffix _cleanall,$(TARGET_DIRS))
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 57 - 18
rtl/amiga/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -72,6 +72,7 @@ BASEDIR=.
 endif
 OS_TARGET=amiga
 CPU_TARGET=m68k
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -121,10 +122,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -200,6 +201,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -210,6 +214,14 @@ 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
@@ -814,8 +826,9 @@ fpc_loaders_install:
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 ifdef TARGET_RSTS
@@ -831,7 +844,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -844,6 +857,8 @@ fpc_debug:
 %$(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)
@@ -851,6 +866,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -952,12 +970,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -991,7 +1010,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1005,12 +1024,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1037,6 +1057,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1054,7 +1090,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 57 - 18
rtl/beos/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -72,6 +72,7 @@ BASEDIR=.
 endif
 OS_TARGET=beos
 CPU_TARGET=i386
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -121,10 +122,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -195,6 +196,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -205,6 +209,14 @@ 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
@@ -809,8 +821,9 @@ fpc_loaders_install:
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 ifdef TARGET_RSTS
@@ -826,7 +839,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -839,6 +852,8 @@ fpc_debug:
 %$(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)
@@ -846,6 +861,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -947,12 +965,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -986,7 +1005,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1000,12 +1019,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1032,6 +1052,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1049,7 +1085,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 58 - 19
rtl/freebsd/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -71,6 +71,7 @@ else
 BASEDIR=.
 endif
 OS_TARGET=freebsd
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -120,10 +121,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -173,7 +174,7 @@ PRT0=prt0
 else
 SYSTEMUNIT=sysbsd
 LINUXUNIT=linux
-override FPCOPT+=-dUNIX -dNOMOUSE
+override FPCOPT+=-dUNIX
 PRT0=prt0_10
 endif
 ifdef RELEASE
@@ -207,6 +208,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -217,6 +221,14 @@ 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
@@ -821,8 +833,9 @@ fpc_loaders_install:
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 ifdef TARGET_RSTS
@@ -838,7 +851,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -851,6 +864,8 @@ fpc_debug:
 %$(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)
@@ -858,6 +873,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -959,12 +977,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -998,7 +1017,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1012,12 +1031,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1044,6 +1064,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1061,7 +1097,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 57 - 18
rtl/go32v1/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -72,6 +72,7 @@ BASEDIR=.
 endif
 OS_TARGET=go32v1
 CPU_TARGET=i386
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -121,10 +122,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -193,6 +194,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -203,6 +207,14 @@ 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
@@ -807,8 +819,9 @@ fpc_loaders_install:
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 ifdef TARGET_RSTS
@@ -824,7 +837,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -837,6 +850,8 @@ fpc_debug:
 %$(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)
@@ -844,6 +859,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -945,12 +963,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -984,7 +1003,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -998,12 +1017,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1030,6 +1050,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1047,7 +1083,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 57 - 18
rtl/go32v2/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -72,6 +72,7 @@ BASEDIR=.
 endif
 OS_TARGET=go32v2
 CPU_TARGET=i386
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -121,10 +122,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -200,6 +201,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -210,6 +214,14 @@ 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
@@ -814,8 +826,9 @@ fpc_loaders_install:
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 ifdef TARGET_RSTS
@@ -831,7 +844,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -844,6 +857,8 @@ fpc_debug:
 %$(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)
@@ -851,6 +866,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -952,12 +970,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -991,7 +1010,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1005,12 +1024,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1037,6 +1057,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1054,7 +1090,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 51 - 18
rtl/linux/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/17]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -71,6 +71,7 @@ else
 BASEDIR=.
 endif
 OS_TARGET=linux
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -120,10 +121,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -231,6 +232,11 @@ UNIXINSTALLDIR=1
 endif
 endif
 ifndef INSTALL_PREFIX
+ifdef PREFIX
+INSTALL_PREFIX=$(PREFIX)
+endif
+endif
+ifndef INSTALL_PREFIX
 ifdef UNIXINSTALLDIR
 INSTALL_PREFIX=/usr/local
 else
@@ -833,8 +839,9 @@ fpc_loaders_install:
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 ifdef TARGET_RSTS
@@ -850,7 +857,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -863,6 +870,8 @@ fpc_debug:
 %$(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)
@@ -870,6 +879,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -971,12 +983,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1010,7 +1023,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1024,12 +1037,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1056,6 +1070,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1073,7 +1103,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 7 - 1
rtl/objpas/objpas.pp

@@ -28,6 +28,9 @@ unit objpas;
     type
        integer = longint;
 
+       { Ansistring are the default }
+       PString = PAnsiString;
+
 {****************************************************************************
                              Compatibility routines.
 ****************************************************************************}
@@ -366,7 +369,10 @@ end.
 
 {
   $Log$
-  Revision 1.8  2001-10-22 21:19:33  peter
+  Revision 1.9  2002-01-06 21:59:13  peter
+    * regenerated
+
+  Revision 1.8  2001/10/22 21:19:33  peter
     * LoadResString, PResStringRec, TResStringRec compatibility added
 
   Revision 1.7  2001/08/19 21:02:02  florian

+ 57 - 18
rtl/os2/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -72,6 +72,7 @@ BASEDIR=.
 endif
 OS_TARGET=os2
 CPU_TARGET=i386
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -121,10 +122,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -199,6 +200,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -209,6 +213,14 @@ 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
@@ -813,8 +825,9 @@ fpc_loaders_install:
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 ifdef TARGET_RSTS
@@ -830,7 +843,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -843,6 +856,8 @@ fpc_debug:
 %$(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)
@@ -850,6 +865,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -951,12 +969,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -990,7 +1009,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1004,12 +1023,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1036,6 +1056,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1053,7 +1089,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 57 - 18
rtl/win32/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -71,6 +71,7 @@ else
 BASEDIR=.
 endif
 OS_TARGET=win32
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -120,10 +121,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -203,6 +204,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -213,6 +217,14 @@ 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
@@ -817,8 +829,9 @@ fpc_loaders_install:
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 ifdef TARGET_RSTS
@@ -834,7 +847,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -847,6 +860,8 @@ fpc_debug:
 %$(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)
@@ -854,6 +869,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -955,12 +973,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -994,7 +1013,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1008,12 +1027,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1040,6 +1060,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1057,7 +1093,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 48 - 15
tests/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: allexectests
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -176,6 +177,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -186,6 +190,14 @@ 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
@@ -817,12 +829,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -856,7 +869,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -870,12 +883,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -902,6 +916,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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:
 examples:
@@ -915,7 +945,10 @@ zipsourceinstall:
 zipexampleinstall:
 zipdistinstall:
 cleanall:
-.PHONY: debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall cleanall
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall cleanall makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 66 - 25
tests/units/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -177,6 +178,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -187,6 +191,14 @@ 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
@@ -690,15 +702,18 @@ 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:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -717,7 +732,6 @@ ifdef UNITDIR_RTL
 override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
-.PHONY: package_rtl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -831,8 +845,9 @@ endif
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 ifdef TARGET_RSTS
@@ -848,7 +863,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -861,6 +876,8 @@ fpc_debug:
 %$(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)
@@ -868,6 +885,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -969,12 +989,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1008,7 +1029,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1022,12 +1043,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1054,6 +1076,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1070,7 +1108,10 @@ zipdistinstall:
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 101 - 58
utils/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/13]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -199,6 +200,11 @@ UNIXINSTALLDIR=1
 endif
 endif
 ifndef INSTALL_PREFIX
+ifdef PREFIX
+INSTALL_PREFIX=$(PREFIX)
+endif
+endif
+ifndef INSTALL_PREFIX
 ifdef UNIXINSTALLDIR
 INSTALL_PREFIX=/usr/local
 else
@@ -752,14 +758,11 @@ REQUIRE_PACKAGES_PASZLIB=1
 REQUIRE_PACKAGES_FCL=1
 endif
 ifdef REQUIRE_PACKAGES_RTL
-PACKAGEDIR_RTL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -779,14 +782,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
 ifdef REQUIRE_PACKAGES_PASZLIB
-PACKAGEDIR_PASZLIB:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /paszlib/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_PASZLIB:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /paszlib/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_PASZLIB),)
-PACKAGEDIR_PASZLIB:=$(firstword $(PACKAGEDIR_PASZLIB))
-ifeq ($(wildcard $(PACKAGEDIR_PASZLIB)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_paszlib
-package_paszlib:
+override COMPILEPACKAGES+=$(PACKAGEDIR_PASZLIB)/$(FPCMADE)
+$(PACKAGEDIR_PASZLIB)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_PASZLIB) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_PASZLIB)/$(OS_TARGET)),)
 UNITDIR_PASZLIB=$(PACKAGEDIR_PASZLIB)/$(OS_TARGET)
 else
@@ -806,14 +806,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_PASZLIB)
 endif
 endif
 ifdef REQUIRE_PACKAGES_INET
-PACKAGEDIR_INET:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /inet/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_INET:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /inet/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_INET),)
-PACKAGEDIR_INET:=$(firstword $(PACKAGEDIR_INET))
-ifeq ($(wildcard $(PACKAGEDIR_INET)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_inet
-package_inet:
+override COMPILEPACKAGES+=$(PACKAGEDIR_INET)/$(FPCMADE)
+$(PACKAGEDIR_INET)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_INET) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_INET)/$(OS_TARGET)),)
 UNITDIR_INET=$(PACKAGEDIR_INET)/$(OS_TARGET)
 else
@@ -833,14 +830,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_INET)
 endif
 endif
 ifdef REQUIRE_PACKAGES_FCL
-PACKAGEDIR_FCL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fcl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_FCL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fcl/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_FCL),)
-PACKAGEDIR_FCL:=$(firstword $(PACKAGEDIR_FCL))
-ifeq ($(wildcard $(PACKAGEDIR_FCL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_fcl
-package_fcl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_FCL)/$(FPCMADE)
+$(PACKAGEDIR_FCL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_FCL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_FCL)/$(OS_TARGET)),)
 UNITDIR_FCL=$(PACKAGEDIR_FCL)/$(OS_TARGET)
 else
@@ -860,14 +854,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_FCL)
 endif
 endif
 ifdef REQUIRE_PACKAGES_MYSQL
-PACKAGEDIR_MYSQL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /mysql/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_MYSQL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /mysql/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_MYSQL),)
-PACKAGEDIR_MYSQL:=$(firstword $(PACKAGEDIR_MYSQL))
-ifeq ($(wildcard $(PACKAGEDIR_MYSQL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_mysql
-package_mysql:
+override COMPILEPACKAGES+=$(PACKAGEDIR_MYSQL)/$(FPCMADE)
+$(PACKAGEDIR_MYSQL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_MYSQL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_MYSQL)/$(OS_TARGET)),)
 UNITDIR_MYSQL=$(PACKAGEDIR_MYSQL)/$(OS_TARGET)
 else
@@ -887,14 +878,11 @@ override COMPILER_UNITDIR+=$(UNITDIR_MYSQL)
 endif
 endif
 ifdef REQUIRE_PACKAGES_IBASE
-PACKAGEDIR_IBASE:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /ibase/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_IBASE:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /ibase/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_IBASE),)
-PACKAGEDIR_IBASE:=$(firstword $(PACKAGEDIR_IBASE))
-ifeq ($(wildcard $(PACKAGEDIR_IBASE)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_ibase
-package_ibase:
+override COMPILEPACKAGES+=$(PACKAGEDIR_IBASE)/$(FPCMADE)
+$(PACKAGEDIR_IBASE)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_IBASE) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_IBASE)/$(OS_TARGET)),)
 UNITDIR_IBASE=$(PACKAGEDIR_IBASE)/$(OS_TARGET)
 else
@@ -913,7 +901,6 @@ ifdef UNITDIR_IBASE
 override COMPILER_UNITDIR+=$(UNITDIR_IBASE)
 endif
 endif
-.PHONY: package_rtl package_paszlib package_inet package_fcl package_mysql package_ibase
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -1054,7 +1041,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -1067,6 +1054,8 @@ fpc_debug:
 %$(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)
@@ -1074,6 +1063,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -1254,12 +1246,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1293,7 +1286,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1307,12 +1300,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1339,6 +1333,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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_DIRS_FPCM=1
 TARGET_DIRS_TPLY=1
 TARGET_DIRS_H2PAS=1
@@ -1379,9 +1389,15 @@ fpcm_cleanall:
 	$(MAKE) -C fpcm cleanall
 fpcm_info:
 	$(MAKE) -C fpcm info
+fpcm_makefile:
+	$(MAKE) -C fpcm makefile
+fpcm_makefiles:
+	$(MAKE) -C fpcm makefiles
+fpcm_makefile_dirs:
+	$(MAKE) -C fpcm makefile_dirs
 fpcm:
 	$(MAKE) -C fpcm all
-.PHONY: fpcm_all fpcm_debug fpcm_smart fpcm_examples fpcm_shared fpcm_install fpcm_sourceinstall fpcm_exampleinstall fpcm_distinstall fpcm_zipinstall fpcm_zipsourceinstall fpcm_zipexampleinstall fpcm_zipdistinstall fpcm_clean fpcm_distclean fpcm_cleanall fpcm_info fpcm
+.PHONY: fpcm_all fpcm_debug fpcm_smart fpcm_examples fpcm_shared fpcm_install fpcm_sourceinstall fpcm_exampleinstall fpcm_distinstall fpcm_zipinstall fpcm_zipsourceinstall fpcm_zipexampleinstall fpcm_zipdistinstall fpcm_clean fpcm_distclean fpcm_cleanall fpcm_info fpcm_makefile fpcm_makefiles fpcm_makefile_dirs fpcm
 endif
 ifdef TARGET_DIRS_TPLY
 tply_all:
@@ -1418,9 +1434,15 @@ tply_cleanall:
 	$(MAKE) -C tply cleanall
 tply_info:
 	$(MAKE) -C tply info
+tply_makefile:
+	$(MAKE) -C tply makefile
+tply_makefiles:
+	$(MAKE) -C tply makefiles
+tply_makefile_dirs:
+	$(MAKE) -C tply makefile_dirs
 tply:
 	$(MAKE) -C tply all
-.PHONY: tply_all tply_debug tply_smart tply_examples tply_shared tply_install tply_sourceinstall tply_exampleinstall tply_distinstall tply_zipinstall tply_zipsourceinstall tply_zipexampleinstall tply_zipdistinstall tply_clean tply_distclean tply_cleanall tply_info tply
+.PHONY: tply_all tply_debug tply_smart tply_examples tply_shared tply_install tply_sourceinstall tply_exampleinstall tply_distinstall tply_zipinstall tply_zipsourceinstall tply_zipexampleinstall tply_zipdistinstall tply_clean tply_distclean tply_cleanall tply_info tply_makefile tply_makefiles tply_makefile_dirs tply
 endif
 ifdef TARGET_DIRS_H2PAS
 h2pas_all:
@@ -1457,9 +1479,15 @@ h2pas_cleanall:
 	$(MAKE) -C h2pas cleanall
 h2pas_info:
 	$(MAKE) -C h2pas info
+h2pas_makefile:
+	$(MAKE) -C h2pas makefile
+h2pas_makefiles:
+	$(MAKE) -C h2pas makefiles
+h2pas_makefile_dirs:
+	$(MAKE) -C h2pas makefile_dirs
 h2pas:
 	$(MAKE) -C h2pas all
-.PHONY: h2pas_all h2pas_debug h2pas_smart h2pas_examples h2pas_shared h2pas_install h2pas_sourceinstall h2pas_exampleinstall h2pas_distinstall h2pas_zipinstall h2pas_zipsourceinstall h2pas_zipexampleinstall h2pas_zipdistinstall h2pas_clean h2pas_distclean h2pas_cleanall h2pas_info h2pas
+.PHONY: h2pas_all h2pas_debug h2pas_smart h2pas_examples h2pas_shared h2pas_install h2pas_sourceinstall h2pas_exampleinstall h2pas_distinstall h2pas_zipinstall h2pas_zipsourceinstall h2pas_zipexampleinstall h2pas_zipdistinstall h2pas_clean h2pas_distclean h2pas_cleanall h2pas_info h2pas_makefile h2pas_makefiles h2pas_makefile_dirs h2pas
 endif
 ifdef TARGET_DIRS_FPRCP
 fprcp_all:
@@ -1496,9 +1524,15 @@ fprcp_cleanall:
 	$(MAKE) -C fprcp cleanall
 fprcp_info:
 	$(MAKE) -C fprcp info
+fprcp_makefile:
+	$(MAKE) -C fprcp makefile
+fprcp_makefiles:
+	$(MAKE) -C fprcp makefiles
+fprcp_makefile_dirs:
+	$(MAKE) -C fprcp makefile_dirs
 fprcp:
 	$(MAKE) -C fprcp all
-.PHONY: fprcp_all fprcp_debug fprcp_smart fprcp_examples fprcp_shared fprcp_install fprcp_sourceinstall fprcp_exampleinstall fprcp_distinstall fprcp_zipinstall fprcp_zipsourceinstall fprcp_zipexampleinstall fprcp_zipdistinstall fprcp_clean fprcp_distclean fprcp_cleanall fprcp_info fprcp
+.PHONY: fprcp_all fprcp_debug fprcp_smart fprcp_examples fprcp_shared fprcp_install fprcp_sourceinstall fprcp_exampleinstall fprcp_distinstall fprcp_zipinstall fprcp_zipsourceinstall fprcp_zipexampleinstall fprcp_zipdistinstall fprcp_clean fprcp_distclean fprcp_cleanall fprcp_info fprcp_makefile fprcp_makefiles fprcp_makefile_dirs fprcp
 endif
 ifdef TARGET_DIRS_DXEGEN
 dxegen_all:
@@ -1535,9 +1569,15 @@ dxegen_cleanall:
 	$(MAKE) -C dxegen cleanall
 dxegen_info:
 	$(MAKE) -C dxegen info
+dxegen_makefile:
+	$(MAKE) -C dxegen makefile
+dxegen_makefiles:
+	$(MAKE) -C dxegen makefiles
+dxegen_makefile_dirs:
+	$(MAKE) -C dxegen makefile_dirs
 dxegen:
 	$(MAKE) -C dxegen all
-.PHONY: dxegen_all dxegen_debug dxegen_smart dxegen_examples dxegen_shared dxegen_install dxegen_sourceinstall dxegen_exampleinstall dxegen_distinstall dxegen_zipinstall dxegen_zipsourceinstall dxegen_zipexampleinstall dxegen_zipdistinstall dxegen_clean dxegen_distclean dxegen_cleanall dxegen_info dxegen
+.PHONY: dxegen_all dxegen_debug dxegen_smart dxegen_examples dxegen_shared dxegen_install dxegen_sourceinstall dxegen_exampleinstall dxegen_distinstall dxegen_zipinstall dxegen_zipsourceinstall dxegen_zipexampleinstall dxegen_zipdistinstall dxegen_clean dxegen_distclean dxegen_cleanall dxegen_info dxegen_makefile dxegen_makefiles dxegen_makefile_dirs dxegen
 endif
 all: fpc_all $(addsuffix _all,$(TARGET_DIRS))
 debug: fpc_debug
@@ -1556,7 +1596,10 @@ clean: fpc_clean $(addsuffix _clean,$(TARGET_DIRS))
 distclean: fpc_distclean $(addsuffix _distclean,$(TARGET_DIRS))
 cleanall: fpc_cleanall $(addsuffix _cleanall,$(TARGET_DIRS))
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 57 - 23
utils/dxegen/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/13]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -180,6 +181,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -190,6 +194,14 @@ 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
@@ -700,14 +712,11 @@ ifeq ($(OS_TARGET),qnx)
 REQUIRE_PACKAGES_RTL=1
 endif
 ifdef REQUIRE_PACKAGES_RTL
-PACKAGEDIR_RTL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -726,7 +735,6 @@ ifdef UNITDIR_RTL
 override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
-.PHONY: package_rtl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -861,7 +869,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -874,6 +882,8 @@ fpc_debug:
 %$(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)
@@ -881,6 +891,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -982,12 +995,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1021,7 +1035,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1035,12 +1049,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1067,6 +1082,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1084,7 +1115,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 51 - 23
utils/fprcp/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/13]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -196,6 +197,11 @@ UNIXINSTALLDIR=1
 endif
 endif
 ifndef INSTALL_PREFIX
+ifdef PREFIX
+INSTALL_PREFIX=$(PREFIX)
+endif
+endif
+ifndef INSTALL_PREFIX
 ifdef UNIXINSTALLDIR
 INSTALL_PREFIX=/usr/local
 else
@@ -704,14 +710,11 @@ ifeq ($(OS_TARGET),qnx)
 REQUIRE_PACKAGES_RTL=1
 endif
 ifdef REQUIRE_PACKAGES_RTL
-PACKAGEDIR_RTL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -730,7 +733,6 @@ ifdef UNITDIR_RTL
 override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
-.PHONY: package_rtl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -865,7 +867,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -878,6 +880,8 @@ fpc_debug:
 %$(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)
@@ -885,6 +889,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -986,12 +993,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1025,7 +1033,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1039,12 +1047,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1071,6 +1080,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1088,7 +1113,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 51 - 23
utils/h2pas/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/13]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -197,6 +198,11 @@ UNIXINSTALLDIR=1
 endif
 endif
 ifndef INSTALL_PREFIX
+ifdef PREFIX
+INSTALL_PREFIX=$(PREFIX)
+endif
+endif
+ifndef INSTALL_PREFIX
 ifdef UNIXINSTALLDIR
 INSTALL_PREFIX=/usr/local
 else
@@ -705,14 +711,11 @@ ifeq ($(OS_TARGET),qnx)
 REQUIRE_PACKAGES_RTL=1
 endif
 ifdef REQUIRE_PACKAGES_RTL
-PACKAGEDIR_RTL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -731,7 +734,6 @@ ifdef UNITDIR_RTL
 override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
-.PHONY: package_rtl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -866,7 +868,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -879,6 +881,8 @@ fpc_debug:
 %$(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)
@@ -886,6 +890,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -987,12 +994,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1026,7 +1034,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1040,12 +1048,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1072,6 +1081,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1089,7 +1114,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 63 - 23
utils/simulator/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/11]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -178,6 +179,9 @@ endif
 ifeq ($(OS_TARGET),netbsd)
 UNIXINSTALLDIR=1
 endif
+ifeq ($(OS_TARGET),sunos)
+UNIXINSTALLDIR=1
+endif
 else
 ifeq ($(OS_SOURCE),linux)
 UNIXINSTALLDIR=1
@@ -188,6 +192,14 @@ 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
@@ -691,15 +703,18 @@ 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:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -718,7 +733,6 @@ ifdef UNITDIR_RTL
 override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
-.PHONY: package_rtl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -853,7 +867,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -866,6 +880,8 @@ fpc_debug:
 %$(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)
@@ -873,6 +889,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -974,12 +993,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1013,7 +1033,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1027,12 +1047,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1059,6 +1080,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1076,7 +1113,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif

+ 54 - 25
utils/tply/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 1.1 [2001/12/13]
+# Don't edit, this file is generated by FPCMake Version 1.1 [2002/01/06]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
@@ -70,6 +70,7 @@ endif
 else
 BASEDIR=.
 endif
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -119,10 +120,10 @@ endif
 else
 override FPCDIR=wrong
 endif
+ifdef DEFAULT_FPCDIR
 ifeq ($(FPCDIR),wrong)
-override FPCDIR=../..
-ifeq ($(wildcard $(FPCDIR)/rtl),)
-ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
 override FPCDIR=wrong
 endif
 endif
@@ -198,6 +199,11 @@ UNIXINSTALLDIR=1
 endif
 endif
 ifndef INSTALL_PREFIX
+ifdef PREFIX
+INSTALL_PREFIX=$(PREFIX)
+endif
+endif
+ifndef INSTALL_PREFIX
 ifdef UNIXINSTALLDIR
 INSTALL_PREFIX=/usr/local
 else
@@ -706,14 +712,11 @@ ifeq ($(OS_TARGET),qnx)
 REQUIRE_PACKAGES_RTL=1
 endif
 ifdef REQUIRE_PACKAGES_RTL
-PACKAGEDIR_RTL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 ifneq ($(PACKAGEDIR_RTL),)
-PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
-ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
-override COMPILEPACKAGES+=package_rtl
-package_rtl:
+override COMPILEPACKAGES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
+$(PACKAGEDIR_RTL)/$(FPCMADE):
 	$(MAKE) -C $(PACKAGEDIR_RTL) all
-endif
 ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
 UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 else
@@ -732,7 +735,6 @@ ifdef UNITDIR_RTL
 override COMPILER_UNITDIR+=$(UNITDIR_RTL)
 endif
 endif
-.PHONY: package_rtl
 ifndef NOCPUDEF
 override FPCOPTDEF=$(CPU_TARGET)
 endif
@@ -846,8 +848,9 @@ endif
 ifdef TARGET_UNITS
 override ALLTARGET+=fpc_units
 override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
-override INSTALLPPUFILES+=$(UNITPPUFILES)
-override CLEANPPUFILES+=$(UNITPPUFILES)
+override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
 endif
 fpc_units: $(UNITPPUFILES)
 .PHONY: fpc_exes
@@ -875,7 +878,7 @@ fpc_smart:
 	$(MAKE) all LINKSMART=1 CREATESMART=1
 fpc_debug:
 	$(MAKE) all DEBUG=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp .rc .res
 %$(PPUEXT): %.pp
 	$(COMPILER) $<
 	$(EXECPPAS)
@@ -888,6 +891,8 @@ fpc_debug:
 %$(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)
@@ -895,6 +900,9 @@ vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 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))
@@ -996,12 +1004,13 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 ifdef AOUTEXT
 	-$(DEL) *$(AOUTEXT)
 endif
-.PHONY: fpc_info
-fpc_info:
+.PHONY: fpc_baseinfo
+override INFORULES+=fpc_baseinfo
+fpc_baseinfo:
 	@$(ECHO)
 	@$(ECHO)  == Package info ==
 	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
@@ -1035,7 +1044,7 @@ fpc_info:
 	@$(ECHO)  Ld........ $(LD)
 	@$(ECHO)  Ar........ $(AR)
 	@$(ECHO)  Rc........ $(RC)
-	@$(ECHO)  
+	@$(ECHO)
 	@$(ECHO)  Mv........ $(MVPROG)
 	@$(ECHO)  Cp........ $(CPPROG)
 	@$(ECHO)  Rm........ $(RMPROG)
@@ -1049,12 +1058,13 @@ fpc_info:
 	@$(ECHO)
 	@$(ECHO)  == Object info ==
 	@$(ECHO)
-	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
-	@$(ECHO)  Target Units........ $(TARGET_UNITS)
-	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
-	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
-	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
-	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(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)
@@ -1081,6 +1091,22 @@ fpc_info:
 	@$(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 Makefile.fpc
+fpc_makefile_sub1:
+ifdef TARGET_DIRS
+	$(FPCMAKE) -w $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(FPCMAKE) -w $(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
@@ -1097,7 +1123,10 @@ clean: fpc_clean
 distclean: fpc_distclean
 cleanall: fpc_cleanall
 info: fpc_info
-.PHONY: all debug smart examples shared sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+makefile: fpc_makefile
+makefiles: fpc_makefiles
+makefile_dirs: fpc_makefile_dirs
+.PHONY: all debug smart examples shared sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefile makefiles makefile_dirs
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif