Browse Source

* fpcmaked -> fpcmade.<TARGET>

peter 26 years ago
parent
commit
005e98fb55
51 changed files with 2157 additions and 1532 deletions
  1. 15 8
      base/Makefile
  2. 15 14
      compiler/Makefile
  3. 15 14
      compiler/new/Makefile
  4. 7 2
      fcl/Makefile
  5. 41 26
      fcl/db/Makefile
  6. 16 15
      fcl/go32v2/Makefile
  7. 16 15
      fcl/linux/Makefile
  8. 37 22
      fcl/os2/Makefile
  9. 17 16
      fcl/shedit/Makefile
  10. 38 23
      fcl/tests/Makefile
  11. 16 15
      fcl/win32/Makefile
  12. 2 2
      ide/Makefile
  13. 2 2
      ide/fake/Makefile
  14. 15 14
      ide/fake/compiler/Makefile
  15. 15 14
      ide/fake/gdb/Makefile
  16. 18 17
      ide/text/Makefile
  17. 246 219
      install/Makefile
  18. 284 229
      install/demo/Makefile
  19. 299 230
      install/fpinst/Makefile
  20. 2 2
      packages/Makefile
  21. 37 22
      packages/forms/Makefile
  22. 125 41
      packages/forms/demo/Makefile
  23. 15 14
      packages/gdbint/Makefile
  24. 41 30
      packages/gdbint/libgdb/Makefile
  25. 39 24
      packages/ggi/Makefile
  26. 15 14
      packages/gtk/Makefile
  27. 15 14
      packages/gtk/examples/Makefile
  28. 15 14
      packages/gtk/tutorial/Makefile
  29. 39 24
      packages/ibase/Makefile
  30. 39 24
      packages/inet/Makefile
  31. 39 24
      packages/mysql/Makefile
  32. 39 24
      packages/ncurses/Makefile
  33. 37 22
      packages/opengl/demos/Makefile
  34. 37 22
      packages/opengl/linuxd/Makefile
  35. 39 24
      packages/opengl/old/Makefile
  36. 39 24
      packages/paszlib/Makefile
  37. 39 24
      packages/postgres/Makefile
  38. 39 24
      packages/svgalib/Makefile
  39. 39 24
      packages/uncgi/Makefile
  40. 39 24
      packages/utmp/Makefile
  41. 2 2
      rtl/Makefile
  42. 37 22
      rtl/go32v1/Makefile
  43. 37 22
      rtl/go32v2/Makefile
  44. 14 13
      rtl/linux/Makefile
  45. 14 13
      rtl/os2/Makefile
  46. 14 13
      rtl/win32/Makefile
  47. 8 2
      tests/Makefile
  48. 38 23
      utils/Makefile
  49. 37 22
      utils/h2pas/Makefile
  50. 37 22
      utils/simulator/Makefile
  51. 37 22
      utils/tply/Makefile

+ 15 - 8
base/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-11-26 12:50
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: info
@@ -65,12 +65,17 @@ endif
 
 # What compiler to use ?
 ifndef FPC
+# Compatibility with old makefiles
+ifdef PP
+export FPC=$(PP)
+else
 ifdef inOS2
 export FPC=ppos2$(EXEEXT)
 else
 export FPC=ppc386$(EXEEXT)
 endif
 endif
+endif
 
 # Target OS
 ifndef OS_TARGET
@@ -189,6 +194,7 @@ endif
 
 # create fcldir,rtldir,unitdir
 ifdef FPCDIR
+override FPCDIR:=$(subst \,/,$(FPCDIR))
 ifneq ($(FPCDIR),.)
 override RTLDIR=$(FPCDIR)/rtl/$(OS_TARGET)
 override FCLDIR=$(FPCDIR)/fcl/$(OS_TARGET)
@@ -315,11 +321,6 @@ endif
 # Default Tools
 #####################################################################
 
-# file used to check if a package is compiled
-ifndef FPCMAKED
-FPCMAKED=fpcmaked
-endif
-
 # assembler, redefine it if cross compiling
 ifndef AS
 AS=as
@@ -345,7 +346,7 @@ endif
 ifeq (,$(findstring -s ,$(COMPILER)))
 EXECPPAS=
 else
-EXECPPAS=@$(PPAS)
+EXECPPAS:=@$(PPAS)
 endif
 
 # ldconfig to rebuild .so cache
@@ -465,6 +466,7 @@ SMARTEXT=.sl
 STATICLIBEXT=.a
 SHAREDLIBEXT=.so
 PACKAGESUFFIX=
+FPCMADE=fpcmade
 
 # Go32v1
 ifeq ($(OS_TARGET),go32v1)
@@ -475,16 +477,19 @@ SMARTEXT=.sl1
 STATICLIBEXT=.a1
 SHAREDLIBEXT=.so1
 PACKAGESUFFIX=v1
+FPCMADE=fpcmade.v1
 endif
 
 # Go32v2
 ifeq ($(OS_TARGET),go32v2)
 PACKAGESUFFIX=go32
+FPCMADE=fpcmade.dos
 endif
 
 # Linux
 ifeq ($(OS_TARGET),linux)
 PACKAGESUFFIX=linux
+FPCMADE=fpcmade.lnx
 endif
 
 # Win32
@@ -496,6 +501,7 @@ SMARTEXT=.slw
 STATICLIBEXT=.aw
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=win32
+FPCMADE=fpcmade.w32
 endif
 
 # OS/2
@@ -507,6 +513,7 @@ SMARTEXT=.so
 STATICLIBEXT=.ao2
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=os2
+FPCMADE=fpcmade.os2
 endif
 
 # library prefix
@@ -571,7 +578,7 @@ depend: $(addsuffix _depend,$(DIROBJECTS))
 #####################################################################
 
 ifneq ($(wildcard $(RTLDIR)),)
-ifeq ($(wildcard $(RTLDIR)/$(FPCMAKED)),)
+ifeq ($(wildcard $(RTLDIR)/$(FPCMADE)),)
 override COMPILEPACKAGES+=rtl
 rtl_package:
 	$(MAKE) -C $(RTLDIR) all

+ 15 - 14
compiler/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-12-06 18:33
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: all
@@ -479,11 +479,6 @@ endif
 # Default Tools
 #####################################################################
 
-# file used to check if a package is compiled
-ifndef FPCMAKED
-FPCMAKED=fpcmaked
-endif
-
 # assembler, redefine it if cross compiling
 ifndef AS
 AS=as
@@ -649,6 +644,7 @@ SMARTEXT=.sl
 STATICLIBEXT=.a
 SHAREDLIBEXT=.so
 PACKAGESUFFIX=
+FPCMADE=fpcmade
 
 # Go32v1
 ifeq ($(OS_TARGET),go32v1)
@@ -659,16 +655,19 @@ SMARTEXT=.sl1
 STATICLIBEXT=.a1
 SHAREDLIBEXT=.so1
 PACKAGESUFFIX=v1
+FPCMADE=fpcmade.v1
 endif
 
 # Go32v2
 ifeq ($(OS_TARGET),go32v2)
 PACKAGESUFFIX=go32
+FPCMADE=fpcmade.dos
 endif
 
 # Linux
 ifeq ($(OS_TARGET),linux)
 PACKAGESUFFIX=linux
+FPCMADE=fpcmade.lnx
 endif
 
 # Win32
@@ -680,6 +679,7 @@ SMARTEXT=.slw
 STATICLIBEXT=.aw
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=win32
+FPCMADE=fpcmade.w32
 endif
 
 # OS/2
@@ -691,6 +691,7 @@ SMARTEXT=.so
 STATICLIBEXT=.ao2
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=os2
+FPCMADE=fpcmade.os2
 endif
 
 # library prefix
@@ -745,7 +746,7 @@ info: fpc_info
 #####################################################################
 
 ifneq ($(wildcard $(RTLDIR)),)
-ifeq ($(wildcard $(RTLDIR)/$(FPCMAKED)),)
+ifeq ($(wildcard $(RTLDIR)/$(FPCMADE)),)
 override COMPILEPACKAGES+=rtl
 rtl_package:
 	$(MAKE) -C $(RTLDIR) all
@@ -760,12 +761,12 @@ endif
 
 .PHONY: fpc_all fpc_debug
 
-$(FPCMAKED):
-	@$(ECHO) Compiled > $(FPCMAKED)
+$(FPCMADE):
+	@$(ECHO) Compiled > $(FPCMADE)
 
 fpc_all: $(addsuffix _package,$(COMPILEPACKAGES)) \
 	 $(addsuffix _component,$(COMPILECOMPONENTS)) \
-	 $(ALLTARGET) $(FPCMAKED)
+	 $(ALLTARGET) $(FPCMADE)
 
 fpc_debug:
 	$(MAKE) all DEBUG=1
@@ -834,7 +835,7 @@ else
 INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLPPUFILES))
 endif
 else
-INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 endif
 endif
 
@@ -965,7 +966,7 @@ ifdef CLEANPPUFILES
 ifdef PPUFILES
 CLEANPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES))
 else
-CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)))
 endif
 endif
 
@@ -982,7 +983,7 @@ endif
 ifdef EXTRACLEANFILES
 	-$(DEL) $(EXTRACLEANFILES)
 endif
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 fpc_cleanall: $(CLEANTARGET)
 ifdef CLEANEXEFILES
@@ -990,7 +991,7 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 #####################################################################
 # Info rules

+ 15 - 14
compiler/new/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-12-06 18:34
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: all
@@ -505,11 +505,6 @@ endif
 # Default Tools
 #####################################################################
 
-# file used to check if a package is compiled
-ifndef FPCMAKED
-FPCMAKED=fpcmaked
-endif
-
 # assembler, redefine it if cross compiling
 ifndef AS
 AS=as
@@ -675,6 +670,7 @@ SMARTEXT=.sl
 STATICLIBEXT=.a
 SHAREDLIBEXT=.so
 PACKAGESUFFIX=
+FPCMADE=fpcmade
 
 # Go32v1
 ifeq ($(OS_TARGET),go32v1)
@@ -685,16 +681,19 @@ SMARTEXT=.sl1
 STATICLIBEXT=.a1
 SHAREDLIBEXT=.so1
 PACKAGESUFFIX=v1
+FPCMADE=fpcmade.v1
 endif
 
 # Go32v2
 ifeq ($(OS_TARGET),go32v2)
 PACKAGESUFFIX=go32
+FPCMADE=fpcmade.dos
 endif
 
 # Linux
 ifeq ($(OS_TARGET),linux)
 PACKAGESUFFIX=linux
+FPCMADE=fpcmade.lnx
 endif
 
 # Win32
@@ -706,6 +705,7 @@ SMARTEXT=.slw
 STATICLIBEXT=.aw
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=win32
+FPCMADE=fpcmade.w32
 endif
 
 # OS/2
@@ -717,6 +717,7 @@ SMARTEXT=.so
 STATICLIBEXT=.ao2
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=os2
+FPCMADE=fpcmade.os2
 endif
 
 # library prefix
@@ -771,7 +772,7 @@ info: fpc_info
 #####################################################################
 
 ifneq ($(wildcard $(RTLDIR)),)
-ifeq ($(wildcard $(RTLDIR)/$(FPCMAKED)),)
+ifeq ($(wildcard $(RTLDIR)/$(FPCMADE)),)
 override COMPILEPACKAGES+=rtl
 rtl_package:
 	$(MAKE) -C $(RTLDIR) all
@@ -786,12 +787,12 @@ endif
 
 .PHONY: fpc_all fpc_debug
 
-$(FPCMAKED):
-	@$(ECHO) Compiled > $(FPCMAKED)
+$(FPCMADE):
+	@$(ECHO) Compiled > $(FPCMADE)
 
 fpc_all: $(addsuffix _package,$(COMPILEPACKAGES)) \
 	 $(addsuffix _component,$(COMPILECOMPONENTS)) \
-	 $(ALLTARGET) $(FPCMAKED)
+	 $(ALLTARGET) $(FPCMADE)
 
 fpc_debug:
 	$(MAKE) all DEBUG=1
@@ -860,7 +861,7 @@ else
 INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLPPUFILES))
 endif
 else
-INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 endif
 endif
 
@@ -991,7 +992,7 @@ ifdef CLEANPPUFILES
 ifdef PPUFILES
 CLEANPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES))
 else
-CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)))
 endif
 endif
 
@@ -1008,7 +1009,7 @@ endif
 ifdef EXTRACLEANFILES
 	-$(DEL) $(EXTRACLEANFILES)
 endif
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 fpc_cleanall: $(CLEANTARGET)
 ifdef CLEANEXEFILES
@@ -1016,7 +1017,7 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 #####################################################################
 # Info rules

+ 7 - 2
fcl/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-11-25 23:49
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: all
@@ -65,12 +65,17 @@ endif
 
 # What compiler to use ?
 ifndef FPC
+# Compatibility with old makefiles
+ifdef PP
+export FPC=$(PP)
+else
 ifdef inOS2
 export FPC=ppos2$(EXEEXT)
 else
 export FPC=ppc386$(EXEEXT)
 endif
 endif
+endif
 
 # Target OS
 ifndef OS_TARGET
@@ -199,7 +204,7 @@ info: $(OS_TARGET)_info
 #####################################################################
 
 ifneq ($(wildcard $(RTLDIR)),)
-ifeq ($(wildcard $(RTLDIR)/$(FPCMAKED)),)
+ifeq ($(wildcard $(RTLDIR)/$(FPCMADE)),)
 override COMPILEPACKAGES+=rtl
 rtl_package:
 	$(MAKE) -C $(RTLDIR) all

+ 41 - 26
fcl/db/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-12-01 21:32
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: all
@@ -71,12 +71,17 @@ override CPU_TARGET:=i386
 
 # What compiler to use ?
 ifndef FPC
+# Compatibility with old makefiles
+ifdef PP
+export FPC=$(PP)
+else
 ifdef inOS2
 export FPC=ppos2$(EXEEXT)
 else
 export FPC=ppc386$(EXEEXT)
 endif
 endif
+endif
 
 # Target OS
 ifndef OS_TARGET
@@ -207,6 +212,7 @@ endif
 
 # create fcldir,rtldir,unitdir
 ifdef FPCDIR
+override FPCDIR:=$(subst \,/,$(FPCDIR))
 ifneq ($(FPCDIR),.)
 override RTLDIR=$(FPCDIR)/rtl/$(OS_TARGET)
 override FCLDIR=$(FPCDIR)/fcl/$(OS_TARGET)
@@ -361,7 +367,15 @@ ifdef CFGFILE
 override FPCOPT+=@$(CFGFILE)
 endif
 
-override COMPILER=$(FPC) $(FPCOPT)
+# For win32 the options are passed using the environment variable FPCEXTCMD
+ifeq ($(OS_SOURCE),win32)
+override FPCEXTCMD:=$(FPCOPT)
+override FPCOPT:=!FPCEXTCMD
+export FPCEXTCMD
+endif
+
+# Compiler commandline
+override COMPILER:=$(FPC) $(FPCOPT)
 
 #####################################################################
 # Shell tools
@@ -423,11 +437,6 @@ endif
 # Default Tools
 #####################################################################
 
-# file used to check if a package is compiled
-ifndef FPCMAKED
-FPCMAKED=fpcmaked
-endif
-
 # assembler, redefine it if cross compiling
 ifndef AS
 AS=as
@@ -453,7 +462,7 @@ endif
 ifeq (,$(findstring -s ,$(COMPILER)))
 EXECPPAS=
 else
-EXECPPAS=@$(PPAS)
+EXECPPAS:=@$(PPAS)
 endif
 
 # ldconfig to rebuild .so cache
@@ -573,6 +582,7 @@ SMARTEXT=.sl
 STATICLIBEXT=.a
 SHAREDLIBEXT=.so
 PACKAGESUFFIX=
+FPCMADE=fpcmade
 
 # Go32v1
 ifeq ($(OS_TARGET),go32v1)
@@ -583,16 +593,19 @@ SMARTEXT=.sl1
 STATICLIBEXT=.a1
 SHAREDLIBEXT=.so1
 PACKAGESUFFIX=v1
+FPCMADE=fpcmade.v1
 endif
 
 # Go32v2
 ifeq ($(OS_TARGET),go32v2)
 PACKAGESUFFIX=go32
+FPCMADE=fpcmade.dos
 endif
 
 # Linux
 ifeq ($(OS_TARGET),linux)
 PACKAGESUFFIX=linux
+FPCMADE=fpcmade.lnx
 endif
 
 # Win32
@@ -604,6 +617,7 @@ SMARTEXT=.slw
 STATICLIBEXT=.aw
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=win32
+FPCMADE=fpcmade.w32
 endif
 
 # OS/2
@@ -615,6 +629,7 @@ SMARTEXT=.so
 STATICLIBEXT=.ao2
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=os2
+FPCMADE=fpcmade.os2
 endif
 
 # library prefix
@@ -679,14 +694,14 @@ info: fpc_info
 #####################################################################
 
 ifneq ($(wildcard $(RTLDIR)),)
-ifeq ($(wildcard $(RTLDIR)/$(FPCMAKED)),)
+ifeq ($(wildcard $(RTLDIR)/$(FPCMADE)),)
 override COMPILEPACKAGES+=rtl
 rtl_package:
 	$(MAKE) -C $(RTLDIR) all
 endif
 endif
 ifneq ($(wildcard $(FCLDIR)),)
-ifeq ($(wildcard $(FCLDIR)/$(FPCMAKED)),)
+ifeq ($(wildcard $(FCLDIR)/$(FPCMADE)),)
 override COMPILEPACKAGES+=fcl
 fcl_package:
 	$(MAKE) -C $(FCLDIR) all
@@ -696,7 +711,7 @@ endif
 PACKAGEMYSQL=1
 ifdef PACKAGEMYSQL
 ifneq ($(wildcard $(PACKAGEDIR)/mysql),)
-ifeq ($(wildcard $(PACKAGEDIR)/mysql/$(FPCMAKED)),)
+ifeq ($(wildcard $(PACKAGEDIR)/mysql/$(FPCMADE)),)
 override COMPILEPACKAGES+=mysql
 mysql_package:
 	$(MAKE) -C $(PACKAGEDIR)/mysql all
@@ -726,8 +741,8 @@ fpc_units: $(UNITPPUFILES)
 
 .PHONY: fpc_examples fpc_test
 
-override EXAMPLEFILES=$(addsuffix $(EXEEXT),$(EXAMPLEOBJECTS))
-override EXAMPLEOFILES=$(addsuffix $(OEXT),$(EXAMPLEOBJECTS))
+override EXAMPLEFILES:=$(addsuffix $(EXEEXT),$(EXAMPLEOBJECTS))
+override EXAMPLEOFILES:=$(addsuffix $(OEXT),$(EXAMPLEOBJECTS))
 
 override CLEANEXEFILES+=$(EXAMPLEFILES) $(EXAMPLEOFILES)
 
@@ -741,12 +756,12 @@ fpc_test: examples
 
 .PHONY: fpc_all fpc_debug
 
-$(FPCMAKED):
-	@$(ECHO) Compiled > $(FPCMAKED)
+$(FPCMADE):
+	@$(ECHO) Compiled > $(FPCMADE)
 
 fpc_all: $(addsuffix _package,$(COMPILEPACKAGES)) \
 	 $(addsuffix _component,$(COMPILECOMPONENTS)) \
-	 $(ALLTARGET) $(FPCMAKED)
+	 $(ALLTARGET) $(FPCMADE)
 
 fpc_debug:
 	$(MAKE) all DEBUG=1
@@ -779,7 +794,7 @@ fpc_debug:
 
 # Default sharedlib units are all unit objects
 ifndef SHAREDLIBUNITOBJECTS
-SHAREDLIBUNITOBJECTS=$(UNITOBJECTS)
+SHAREDLIBUNITOBJECTS:=$(UNITOBJECTS)
 endif
 
 fpc_smart:
@@ -809,13 +824,13 @@ endif
 ifdef INSTALLPPUFILES
 ifdef PPUFILES
 ifdef inlinux
-INSTALLPPULINKFILES=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
-INSTALLPPULIBFILES=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
+INSTALLPPULIBFILES:=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
 else
-INSTALLPPULINKFILES=$(shell $(PPUFILES) $(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLPPUFILES))
 endif
 else
-INSTALLPPULINKFILES=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 endif
 endif
 
@@ -889,7 +904,7 @@ endif
 
 # Test dir if none specified
 ifndef DESTZIPDIR
-DESTZIPDIR=$(BASEDIR)
+DESTZIPDIR:=$(BASEDIR)
 endif
 
 # Add .zip/.tar.gz extension
@@ -944,9 +959,9 @@ endif
 
 ifdef CLEANPPUFILES
 ifdef PPUFILES
-CLEANPPULINKFILES=$(shell $(PPUFILES) $(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES))
 else
-CLEANPPULINKFILES=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)))
 endif
 endif
 
@@ -963,7 +978,7 @@ endif
 ifdef EXTRACLEANFILES
 	-$(DEL) $(EXTRACLEANFILES)
 endif
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 fpc_cleanall: $(CLEANTARGET)
 ifdef CLEANEXEFILES
@@ -971,7 +986,7 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 #####################################################################
 # Info rules

+ 16 - 15
fcl/go32v2/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-12-10 00:03
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: all
@@ -441,11 +441,6 @@ endif
 # Default Tools
 #####################################################################
 
-# file used to check if a package is compiled
-ifndef FPCMAKED
-FPCMAKED=fpcmaked
-endif
-
 # assembler, redefine it if cross compiling
 ifndef AS
 AS=as
@@ -591,6 +586,7 @@ SMARTEXT=.sl
 STATICLIBEXT=.a
 SHAREDLIBEXT=.so
 PACKAGESUFFIX=
+FPCMADE=fpcmade
 
 # Go32v1
 ifeq ($(OS_TARGET),go32v1)
@@ -601,16 +597,19 @@ SMARTEXT=.sl1
 STATICLIBEXT=.a1
 SHAREDLIBEXT=.so1
 PACKAGESUFFIX=v1
+FPCMADE=fpcmade.v1
 endif
 
 # Go32v2
 ifeq ($(OS_TARGET),go32v2)
 PACKAGESUFFIX=go32
+FPCMADE=fpcmade.dos
 endif
 
 # Linux
 ifeq ($(OS_TARGET),linux)
 PACKAGESUFFIX=linux
+FPCMADE=fpcmade.lnx
 endif
 
 # Win32
@@ -622,6 +621,7 @@ SMARTEXT=.slw
 STATICLIBEXT=.aw
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=win32
+FPCMADE=fpcmade.w32
 endif
 
 # OS/2
@@ -633,6 +633,7 @@ SMARTEXT=.so
 STATICLIBEXT=.ao2
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=os2
+FPCMADE=fpcmade.os2
 endif
 
 # library prefix
@@ -693,7 +694,7 @@ info: fpc_info
 #####################################################################
 
 ifneq ($(wildcard $(RTLDIR)),)
-ifeq ($(wildcard $(RTLDIR)/$(FPCMAKED)),)
+ifeq ($(wildcard $(RTLDIR)/$(FPCMADE)),)
 override COMPILEPACKAGES+=rtl
 rtl_package:
 	$(MAKE) -C $(RTLDIR) all
@@ -703,7 +704,7 @@ endif
 PACKAGEPASZLIB=1
 ifdef PACKAGEPASZLIB
 ifneq ($(wildcard $(PACKAGEDIR)/paszlib),)
-ifeq ($(wildcard $(PACKAGEDIR)/paszlib/$(FPCMAKED)),)
+ifeq ($(wildcard $(PACKAGEDIR)/paszlib/$(FPCMADE)),)
 override COMPILEPACKAGES+=paszlib
 paszlib_package:
 	$(MAKE) -C $(PACKAGEDIR)/paszlib all
@@ -733,12 +734,12 @@ fpc_units: $(UNITPPUFILES)
 
 .PHONY: fpc_all fpc_debug
 
-$(FPCMAKED):
-	@$(ECHO) Compiled > $(FPCMAKED)
+$(FPCMADE):
+	@$(ECHO) Compiled > $(FPCMADE)
 
 fpc_all: $(addsuffix _package,$(COMPILEPACKAGES)) \
 	 $(addsuffix _component,$(COMPILECOMPONENTS)) \
-	 $(ALLTARGET) $(FPCMAKED)
+	 $(ALLTARGET) $(FPCMADE)
 
 fpc_debug:
 	$(MAKE) all DEBUG=1
@@ -807,7 +808,7 @@ else
 INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLPPUFILES))
 endif
 else
-INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 endif
 endif
 
@@ -938,7 +939,7 @@ ifdef CLEANPPUFILES
 ifdef PPUFILES
 CLEANPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES))
 else
-CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)))
 endif
 endif
 
@@ -955,7 +956,7 @@ endif
 ifdef EXTRACLEANFILES
 	-$(DEL) $(EXTRACLEANFILES)
 endif
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 fpc_cleanall: $(CLEANTARGET)
 ifdef CLEANEXEFILES
@@ -963,7 +964,7 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 #####################################################################
 # Info rules

+ 16 - 15
fcl/linux/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-12-10 00:01
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: all
@@ -441,11 +441,6 @@ endif
 # Default Tools
 #####################################################################
 
-# file used to check if a package is compiled
-ifndef FPCMAKED
-FPCMAKED=fpcmaked
-endif
-
 # assembler, redefine it if cross compiling
 ifndef AS
 AS=as
@@ -591,6 +586,7 @@ SMARTEXT=.sl
 STATICLIBEXT=.a
 SHAREDLIBEXT=.so
 PACKAGESUFFIX=
+FPCMADE=fpcmade
 
 # Go32v1
 ifeq ($(OS_TARGET),go32v1)
@@ -601,16 +597,19 @@ SMARTEXT=.sl1
 STATICLIBEXT=.a1
 SHAREDLIBEXT=.so1
 PACKAGESUFFIX=v1
+FPCMADE=fpcmade.v1
 endif
 
 # Go32v2
 ifeq ($(OS_TARGET),go32v2)
 PACKAGESUFFIX=go32
+FPCMADE=fpcmade.dos
 endif
 
 # Linux
 ifeq ($(OS_TARGET),linux)
 PACKAGESUFFIX=linux
+FPCMADE=fpcmade.lnx
 endif
 
 # Win32
@@ -622,6 +621,7 @@ SMARTEXT=.slw
 STATICLIBEXT=.aw
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=win32
+FPCMADE=fpcmade.w32
 endif
 
 # OS/2
@@ -633,6 +633,7 @@ SMARTEXT=.so
 STATICLIBEXT=.ao2
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=os2
+FPCMADE=fpcmade.os2
 endif
 
 # library prefix
@@ -693,7 +694,7 @@ info: fpc_info
 #####################################################################
 
 ifneq ($(wildcard $(RTLDIR)),)
-ifeq ($(wildcard $(RTLDIR)/$(FPCMAKED)),)
+ifeq ($(wildcard $(RTLDIR)/$(FPCMADE)),)
 override COMPILEPACKAGES+=rtl
 rtl_package:
 	$(MAKE) -C $(RTLDIR) all
@@ -703,7 +704,7 @@ endif
 PACKAGEZLIB=1
 ifdef PACKAGEZLIB
 ifneq ($(wildcard $(PACKAGEDIR)/zlib),)
-ifeq ($(wildcard $(PACKAGEDIR)/zlib/$(FPCMAKED)),)
+ifeq ($(wildcard $(PACKAGEDIR)/zlib/$(FPCMADE)),)
 override COMPILEPACKAGES+=zlib
 zlib_package:
 	$(MAKE) -C $(PACKAGEDIR)/zlib all
@@ -733,12 +734,12 @@ fpc_units: $(UNITPPUFILES)
 
 .PHONY: fpc_all fpc_debug
 
-$(FPCMAKED):
-	@$(ECHO) Compiled > $(FPCMAKED)
+$(FPCMADE):
+	@$(ECHO) Compiled > $(FPCMADE)
 
 fpc_all: $(addsuffix _package,$(COMPILEPACKAGES)) \
 	 $(addsuffix _component,$(COMPILECOMPONENTS)) \
-	 $(ALLTARGET) $(FPCMAKED)
+	 $(ALLTARGET) $(FPCMADE)
 
 fpc_debug:
 	$(MAKE) all DEBUG=1
@@ -807,7 +808,7 @@ else
 INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLPPUFILES))
 endif
 else
-INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 endif
 endif
 
@@ -938,7 +939,7 @@ ifdef CLEANPPUFILES
 ifdef PPUFILES
 CLEANPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES))
 else
-CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)))
 endif
 endif
 
@@ -955,7 +956,7 @@ endif
 ifdef EXTRACLEANFILES
 	-$(DEL) $(EXTRACLEANFILES)
 endif
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 fpc_cleanall: $(CLEANTARGET)
 ifdef CLEANEXEFILES
@@ -963,7 +964,7 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 #####################################################################
 # Info rules

+ 37 - 22
fcl/os2/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-11-25 23:49
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: all
@@ -72,12 +72,17 @@ override CPU_TARGET:=i386
 
 # What compiler to use ?
 ifndef FPC
+# Compatibility with old makefiles
+ifdef PP
+export FPC=$(PP)
+else
 ifdef inOS2
 export FPC=ppos2$(EXEEXT)
 else
 export FPC=ppc386$(EXEEXT)
 endif
 endif
+endif
 
 # Target OS
 ifndef OS_TARGET
@@ -216,6 +221,7 @@ endif
 
 # create fcldir,rtldir,unitdir
 ifdef FPCDIR
+override FPCDIR:=$(subst \,/,$(FPCDIR))
 ifneq ($(FPCDIR),.)
 override RTLDIR=$(FPCDIR)/rtl/$(OS_TARGET)
 override FCLDIR=$(FPCDIR)/fcl/$(OS_TARGET)
@@ -359,7 +365,15 @@ ifdef CFGFILE
 override FPCOPT+=@$(CFGFILE)
 endif
 
-override COMPILER=$(FPC) $(FPCOPT)
+# For win32 the options are passed using the environment variable FPCEXTCMD
+ifeq ($(OS_SOURCE),win32)
+override FPCEXTCMD:=$(FPCOPT)
+override FPCOPT:=!FPCEXTCMD
+export FPCEXTCMD
+endif
+
+# Compiler commandline
+override COMPILER:=$(FPC) $(FPCOPT)
 
 #####################################################################
 # Shell tools
@@ -421,11 +435,6 @@ endif
 # Default Tools
 #####################################################################
 
-# file used to check if a package is compiled
-ifndef FPCMAKED
-FPCMAKED=fpcmaked
-endif
-
 # assembler, redefine it if cross compiling
 ifndef AS
 AS=as
@@ -451,7 +460,7 @@ endif
 ifeq (,$(findstring -s ,$(COMPILER)))
 EXECPPAS=
 else
-EXECPPAS=@$(PPAS)
+EXECPPAS:=@$(PPAS)
 endif
 
 # ldconfig to rebuild .so cache
@@ -571,6 +580,7 @@ SMARTEXT=.sl
 STATICLIBEXT=.a
 SHAREDLIBEXT=.so
 PACKAGESUFFIX=
+FPCMADE=fpcmade
 
 # Go32v1
 ifeq ($(OS_TARGET),go32v1)
@@ -581,16 +591,19 @@ SMARTEXT=.sl1
 STATICLIBEXT=.a1
 SHAREDLIBEXT=.so1
 PACKAGESUFFIX=v1
+FPCMADE=fpcmade.v1
 endif
 
 # Go32v2
 ifeq ($(OS_TARGET),go32v2)
 PACKAGESUFFIX=go32
+FPCMADE=fpcmade.dos
 endif
 
 # Linux
 ifeq ($(OS_TARGET),linux)
 PACKAGESUFFIX=linux
+FPCMADE=fpcmade.lnx
 endif
 
 # Win32
@@ -602,6 +615,7 @@ SMARTEXT=.slw
 STATICLIBEXT=.aw
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=win32
+FPCMADE=fpcmade.w32
 endif
 
 # OS/2
@@ -613,6 +627,7 @@ SMARTEXT=.so
 STATICLIBEXT=.ao2
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=os2
+FPCMADE=fpcmade.os2
 endif
 
 # library prefix
@@ -673,7 +688,7 @@ info: fpc_info
 #####################################################################
 
 ifneq ($(wildcard $(RTLDIR)),)
-ifeq ($(wildcard $(RTLDIR)/$(FPCMAKED)),)
+ifeq ($(wildcard $(RTLDIR)/$(FPCMADE)),)
 override COMPILEPACKAGES+=rtl
 rtl_package:
 	$(MAKE) -C $(RTLDIR) all
@@ -702,12 +717,12 @@ fpc_units: $(UNITPPUFILES)
 
 .PHONY: fpc_all fpc_debug
 
-$(FPCMAKED):
-	@$(ECHO) Compiled > $(FPCMAKED)
+$(FPCMADE):
+	@$(ECHO) Compiled > $(FPCMADE)
 
 fpc_all: $(addsuffix _package,$(COMPILEPACKAGES)) \
 	 $(addsuffix _component,$(COMPILECOMPONENTS)) \
-	 $(ALLTARGET) $(FPCMAKED)
+	 $(ALLTARGET) $(FPCMADE)
 
 fpc_debug:
 	$(MAKE) all DEBUG=1
@@ -740,7 +755,7 @@ fpc_debug:
 
 # Default sharedlib units are all unit objects
 ifndef SHAREDLIBUNITOBJECTS
-SHAREDLIBUNITOBJECTS=$(UNITOBJECTS)
+SHAREDLIBUNITOBJECTS:=$(UNITOBJECTS)
 endif
 
 fpc_smart:
@@ -770,13 +785,13 @@ endif
 ifdef INSTALLPPUFILES
 ifdef PPUFILES
 ifdef inlinux
-INSTALLPPULINKFILES=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
-INSTALLPPULIBFILES=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
+INSTALLPPULIBFILES:=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
 else
-INSTALLPPULINKFILES=$(shell $(PPUFILES) $(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLPPUFILES))
 endif
 else
-INSTALLPPULINKFILES=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 endif
 endif
 
@@ -850,7 +865,7 @@ endif
 
 # Test dir if none specified
 ifndef DESTZIPDIR
-DESTZIPDIR=$(BASEDIR)
+DESTZIPDIR:=$(BASEDIR)
 endif
 
 # Add .zip/.tar.gz extension
@@ -905,9 +920,9 @@ endif
 
 ifdef CLEANPPUFILES
 ifdef PPUFILES
-CLEANPPULINKFILES=$(shell $(PPUFILES) $(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES))
 else
-CLEANPPULINKFILES=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)))
 endif
 endif
 
@@ -924,7 +939,7 @@ endif
 ifdef EXTRACLEANFILES
 	-$(DEL) $(EXTRACLEANFILES)
 endif
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 fpc_cleanall: $(CLEANTARGET)
 ifdef CLEANEXEFILES
@@ -932,7 +947,7 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 #####################################################################
 # Info rules

+ 17 - 16
fcl/shedit/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-12-12 18:45
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: all
@@ -426,11 +426,6 @@ endif
 # Default Tools
 #####################################################################
 
-# file used to check if a package is compiled
-ifndef FPCMAKED
-FPCMAKED=fpcmaked
-endif
-
 # assembler, redefine it if cross compiling
 ifndef AS
 AS=as
@@ -576,6 +571,7 @@ SMARTEXT=.sl
 STATICLIBEXT=.a
 SHAREDLIBEXT=.so
 PACKAGESUFFIX=
+FPCMADE=fpcmade
 
 # Go32v1
 ifeq ($(OS_TARGET),go32v1)
@@ -586,16 +582,19 @@ SMARTEXT=.sl1
 STATICLIBEXT=.a1
 SHAREDLIBEXT=.so1
 PACKAGESUFFIX=v1
+FPCMADE=fpcmade.v1
 endif
 
 # Go32v2
 ifeq ($(OS_TARGET),go32v2)
 PACKAGESUFFIX=go32
+FPCMADE=fpcmade.dos
 endif
 
 # Linux
 ifeq ($(OS_TARGET),linux)
 PACKAGESUFFIX=linux
+FPCMADE=fpcmade.lnx
 endif
 
 # Win32
@@ -607,6 +606,7 @@ SMARTEXT=.slw
 STATICLIBEXT=.aw
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=win32
+FPCMADE=fpcmade.w32
 endif
 
 # OS/2
@@ -618,6 +618,7 @@ SMARTEXT=.so
 STATICLIBEXT=.ao2
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=os2
+FPCMADE=fpcmade.os2
 endif
 
 # library prefix
@@ -678,14 +679,14 @@ info: fpc_info
 #####################################################################
 
 ifneq ($(wildcard $(RTLDIR)),)
-ifeq ($(wildcard $(RTLDIR)/$(FPCMAKED)),)
+ifeq ($(wildcard $(RTLDIR)/$(FPCMADE)),)
 override COMPILEPACKAGES+=rtl
 rtl_package:
 	$(MAKE) -C $(RTLDIR) all
 endif
 endif
 ifneq ($(wildcard $(FCLDIR)),)
-ifeq ($(wildcard $(FCLDIR)/$(FPCMAKED)),)
+ifeq ($(wildcard $(FCLDIR)/$(FPCMADE)),)
 override COMPILEPACKAGES+=fcl
 fcl_package:
 	$(MAKE) -C $(FCLDIR) all
@@ -700,7 +701,7 @@ PACKAGEGTK=1
 endif
 ifdef PACKAGEGTK
 ifneq ($(wildcard $(PACKAGEDIR)/gtk),)
-ifeq ($(wildcard $(PACKAGEDIR)/gtk/$(FPCMAKED)),)
+ifeq ($(wildcard $(PACKAGEDIR)/gtk/$(FPCMADE)),)
 override COMPILEPACKAGES+=gtk
 gtk_package:
 	$(MAKE) -C $(PACKAGEDIR)/gtk all
@@ -745,12 +746,12 @@ fpc_exes: $(EXEFILES)
 
 .PHONY: fpc_all fpc_debug
 
-$(FPCMAKED):
-	@$(ECHO) Compiled > $(FPCMAKED)
+$(FPCMADE):
+	@$(ECHO) Compiled > $(FPCMADE)
 
 fpc_all: $(addsuffix _package,$(COMPILEPACKAGES)) \
 	 $(addsuffix _component,$(COMPILECOMPONENTS)) \
-	 $(ALLTARGET) $(FPCMAKED)
+	 $(ALLTARGET) $(FPCMADE)
 
 fpc_debug:
 	$(MAKE) all DEBUG=1
@@ -819,7 +820,7 @@ else
 INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLPPUFILES))
 endif
 else
-INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 endif
 endif
 
@@ -950,7 +951,7 @@ ifdef CLEANPPUFILES
 ifdef PPUFILES
 CLEANPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES))
 else
-CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)))
 endif
 endif
 
@@ -967,7 +968,7 @@ endif
 ifdef EXTRACLEANFILES
 	-$(DEL) $(EXTRACLEANFILES)
 endif
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 fpc_cleanall: $(CLEANTARGET)
 ifdef CLEANEXEFILES
@@ -975,7 +976,7 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 #####################################################################
 # Info rules

+ 38 - 23
fcl/tests/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-11-25 23:49
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: all
@@ -65,12 +65,17 @@ endif
 
 # What compiler to use ?
 ifndef FPC
+# Compatibility with old makefiles
+ifdef PP
+export FPC=$(PP)
+else
 ifdef inOS2
 export FPC=ppos2$(EXEEXT)
 else
 export FPC=ppc386$(EXEEXT)
 endif
 endif
+endif
 
 # Target OS
 ifndef OS_TARGET
@@ -201,6 +206,7 @@ endif
 
 # create fcldir,rtldir,unitdir
 ifdef FPCDIR
+override FPCDIR:=$(subst \,/,$(FPCDIR))
 ifneq ($(FPCDIR),.)
 override RTLDIR=$(FPCDIR)/rtl/$(OS_TARGET)
 override FCLDIR=$(FPCDIR)/fcl/$(OS_TARGET)
@@ -343,7 +349,15 @@ ifdef CFGFILE
 override FPCOPT+=@$(CFGFILE)
 endif
 
-override COMPILER=$(FPC) $(FPCOPT)
+# For win32 the options are passed using the environment variable FPCEXTCMD
+ifeq ($(OS_SOURCE),win32)
+override FPCEXTCMD:=$(FPCOPT)
+override FPCOPT:=!FPCEXTCMD
+export FPCEXTCMD
+endif
+
+# Compiler commandline
+override COMPILER:=$(FPC) $(FPCOPT)
 
 #####################################################################
 # Shell tools
@@ -405,11 +419,6 @@ endif
 # Default Tools
 #####################################################################
 
-# file used to check if a package is compiled
-ifndef FPCMAKED
-FPCMAKED=fpcmaked
-endif
-
 # assembler, redefine it if cross compiling
 ifndef AS
 AS=as
@@ -435,7 +444,7 @@ endif
 ifeq (,$(findstring -s ,$(COMPILER)))
 EXECPPAS=
 else
-EXECPPAS=@$(PPAS)
+EXECPPAS:=@$(PPAS)
 endif
 
 # ldconfig to rebuild .so cache
@@ -555,6 +564,7 @@ SMARTEXT=.sl
 STATICLIBEXT=.a
 SHAREDLIBEXT=.so
 PACKAGESUFFIX=
+FPCMADE=fpcmade
 
 # Go32v1
 ifeq ($(OS_TARGET),go32v1)
@@ -565,16 +575,19 @@ SMARTEXT=.sl1
 STATICLIBEXT=.a1
 SHAREDLIBEXT=.so1
 PACKAGESUFFIX=v1
+FPCMADE=fpcmade.v1
 endif
 
 # Go32v2
 ifeq ($(OS_TARGET),go32v2)
 PACKAGESUFFIX=go32
+FPCMADE=fpcmade.dos
 endif
 
 # Linux
 ifeq ($(OS_TARGET),linux)
 PACKAGESUFFIX=linux
+FPCMADE=fpcmade.lnx
 endif
 
 # Win32
@@ -586,6 +599,7 @@ SMARTEXT=.slw
 STATICLIBEXT=.aw
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=win32
+FPCMADE=fpcmade.w32
 endif
 
 # OS/2
@@ -597,6 +611,7 @@ SMARTEXT=.so
 STATICLIBEXT=.ao2
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=os2
+FPCMADE=fpcmade.os2
 endif
 
 # library prefix
@@ -657,14 +672,14 @@ info: fpc_info
 #####################################################################
 
 ifneq ($(wildcard $(RTLDIR)),)
-ifeq ($(wildcard $(RTLDIR)/$(FPCMAKED)),)
+ifeq ($(wildcard $(RTLDIR)/$(FPCMADE)),)
 override COMPILEPACKAGES+=rtl
 rtl_package:
 	$(MAKE) -C $(RTLDIR) all
 endif
 endif
 ifneq ($(wildcard $(FCLDIR)),)
-ifeq ($(wildcard $(FCLDIR)/$(FPCMAKED)),)
+ifeq ($(wildcard $(FCLDIR)/$(FPCMADE)),)
 override COMPILEPACKAGES+=fcl
 fcl_package:
 	$(MAKE) -C $(FCLDIR) all
@@ -694,12 +709,12 @@ fpc_exes: $(EXEFILES)
 
 .PHONY: fpc_all fpc_debug
 
-$(FPCMAKED):
-	@$(ECHO) Compiled > $(FPCMAKED)
+$(FPCMADE):
+	@$(ECHO) Compiled > $(FPCMADE)
 
 fpc_all: $(addsuffix _package,$(COMPILEPACKAGES)) \
 	 $(addsuffix _component,$(COMPILECOMPONENTS)) \
-	 $(ALLTARGET) $(FPCMAKED)
+	 $(ALLTARGET) $(FPCMADE)
 
 fpc_debug:
 	$(MAKE) all DEBUG=1
@@ -732,7 +747,7 @@ fpc_debug:
 
 # Default sharedlib units are all unit objects
 ifndef SHAREDLIBUNITOBJECTS
-SHAREDLIBUNITOBJECTS=$(UNITOBJECTS)
+SHAREDLIBUNITOBJECTS:=$(UNITOBJECTS)
 endif
 
 fpc_smart:
@@ -762,13 +777,13 @@ endif
 ifdef INSTALLPPUFILES
 ifdef PPUFILES
 ifdef inlinux
-INSTALLPPULINKFILES=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
-INSTALLPPULIBFILES=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
+INSTALLPPULIBFILES:=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
 else
-INSTALLPPULINKFILES=$(shell $(PPUFILES) $(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLPPUFILES))
 endif
 else
-INSTALLPPULINKFILES=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 endif
 endif
 
@@ -842,7 +857,7 @@ endif
 
 # Test dir if none specified
 ifndef DESTZIPDIR
-DESTZIPDIR=$(BASEDIR)
+DESTZIPDIR:=$(BASEDIR)
 endif
 
 # Add .zip/.tar.gz extension
@@ -897,9 +912,9 @@ endif
 
 ifdef CLEANPPUFILES
 ifdef PPUFILES
-CLEANPPULINKFILES=$(shell $(PPUFILES) $(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES))
 else
-CLEANPPULINKFILES=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)))
 endif
 endif
 
@@ -916,7 +931,7 @@ endif
 ifdef EXTRACLEANFILES
 	-$(DEL) $(EXTRACLEANFILES)
 endif
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 fpc_cleanall: $(CLEANTARGET)
 ifdef CLEANEXEFILES
@@ -924,7 +939,7 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 #####################################################################
 # Info rules

+ 16 - 15
fcl/win32/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-12-13 12:11
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: all
@@ -441,11 +441,6 @@ endif
 # Default Tools
 #####################################################################
 
-# file used to check if a package is compiled
-ifndef FPCMAKED
-FPCMAKED=fpcmaked
-endif
-
 # assembler, redefine it if cross compiling
 ifndef AS
 AS=as
@@ -591,6 +586,7 @@ SMARTEXT=.sl
 STATICLIBEXT=.a
 SHAREDLIBEXT=.so
 PACKAGESUFFIX=
+FPCMADE=fpcmade
 
 # Go32v1
 ifeq ($(OS_TARGET),go32v1)
@@ -601,16 +597,19 @@ SMARTEXT=.sl1
 STATICLIBEXT=.a1
 SHAREDLIBEXT=.so1
 PACKAGESUFFIX=v1
+FPCMADE=fpcmade.v1
 endif
 
 # Go32v2
 ifeq ($(OS_TARGET),go32v2)
 PACKAGESUFFIX=go32
+FPCMADE=fpcmade.dos
 endif
 
 # Linux
 ifeq ($(OS_TARGET),linux)
 PACKAGESUFFIX=linux
+FPCMADE=fpcmade.lnx
 endif
 
 # Win32
@@ -622,6 +621,7 @@ SMARTEXT=.slw
 STATICLIBEXT=.aw
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=win32
+FPCMADE=fpcmade.w32
 endif
 
 # OS/2
@@ -633,6 +633,7 @@ SMARTEXT=.so
 STATICLIBEXT=.ao2
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=os2
+FPCMADE=fpcmade.os2
 endif
 
 # library prefix
@@ -693,7 +694,7 @@ info: fpc_info
 #####################################################################
 
 ifneq ($(wildcard $(RTLDIR)),)
-ifeq ($(wildcard $(RTLDIR)/$(FPCMAKED)),)
+ifeq ($(wildcard $(RTLDIR)/$(FPCMADE)),)
 override COMPILEPACKAGES+=rtl
 rtl_package:
 	$(MAKE) -C $(RTLDIR) all
@@ -703,7 +704,7 @@ endif
 PACKAGEPASZLIB=1
 ifdef PACKAGEPASZLIB
 ifneq ($(wildcard $(PACKAGEDIR)/paszlib),)
-ifeq ($(wildcard $(PACKAGEDIR)/paszlib/$(FPCMAKED)),)
+ifeq ($(wildcard $(PACKAGEDIR)/paszlib/$(FPCMADE)),)
 override COMPILEPACKAGES+=paszlib
 paszlib_package:
 	$(MAKE) -C $(PACKAGEDIR)/paszlib all
@@ -733,12 +734,12 @@ fpc_units: $(UNITPPUFILES)
 
 .PHONY: fpc_all fpc_debug
 
-$(FPCMAKED):
-	@$(ECHO) Compiled > $(FPCMAKED)
+$(FPCMADE):
+	@$(ECHO) Compiled > $(FPCMADE)
 
 fpc_all: $(addsuffix _package,$(COMPILEPACKAGES)) \
 	 $(addsuffix _component,$(COMPILECOMPONENTS)) \
-	 $(ALLTARGET) $(FPCMAKED)
+	 $(ALLTARGET) $(FPCMADE)
 
 fpc_debug:
 	$(MAKE) all DEBUG=1
@@ -807,7 +808,7 @@ else
 INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLPPUFILES))
 endif
 else
-INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 endif
 endif
 
@@ -938,7 +939,7 @@ ifdef CLEANPPUFILES
 ifdef PPUFILES
 CLEANPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES))
 else
-CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)))
 endif
 endif
 
@@ -955,7 +956,7 @@ endif
 ifdef EXTRACLEANFILES
 	-$(DEL) $(EXTRACLEANFILES)
 endif
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 fpc_cleanall: $(CLEANTARGET)
 ifdef CLEANEXEFILES
@@ -963,7 +964,7 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 #####################################################################
 # Info rules

+ 2 - 2
ide/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-12-06 18:34
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: all
@@ -202,7 +202,7 @@ info: $(addsuffix _info,$(DIROBJECTS))
 #####################################################################
 
 ifneq ($(wildcard $(RTLDIR)),)
-ifeq ($(wildcard $(RTLDIR)/$(FPCMAKED)),)
+ifeq ($(wildcard $(RTLDIR)/$(FPCMADE)),)
 override COMPILEPACKAGES+=rtl
 rtl_package:
 	$(MAKE) -C $(RTLDIR) all

+ 2 - 2
ide/fake/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-12-06 18:34
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: all
@@ -204,7 +204,7 @@ info: $(addsuffix _info,$(DIROBJECTS))
 #####################################################################
 
 ifneq ($(wildcard $(RTLDIR)),)
-ifeq ($(wildcard $(RTLDIR)/$(FPCMAKED)),)
+ifeq ($(wildcard $(RTLDIR)/$(FPCMADE)),)
 override COMPILEPACKAGES+=rtl
 rtl_package:
 	$(MAKE) -C $(RTLDIR) all

+ 15 - 14
ide/fake/compiler/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-12-06 18:34
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: all
@@ -386,11 +386,6 @@ endif
 # Default Tools
 #####################################################################
 
-# file used to check if a package is compiled
-ifndef FPCMAKED
-FPCMAKED=fpcmaked
-endif
-
 # assembler, redefine it if cross compiling
 ifndef AS
 AS=as
@@ -536,6 +531,7 @@ SMARTEXT=.sl
 STATICLIBEXT=.a
 SHAREDLIBEXT=.so
 PACKAGESUFFIX=
+FPCMADE=fpcmade
 
 # Go32v1
 ifeq ($(OS_TARGET),go32v1)
@@ -546,16 +542,19 @@ SMARTEXT=.sl1
 STATICLIBEXT=.a1
 SHAREDLIBEXT=.so1
 PACKAGESUFFIX=v1
+FPCMADE=fpcmade.v1
 endif
 
 # Go32v2
 ifeq ($(OS_TARGET),go32v2)
 PACKAGESUFFIX=go32
+FPCMADE=fpcmade.dos
 endif
 
 # Linux
 ifeq ($(OS_TARGET),linux)
 PACKAGESUFFIX=linux
+FPCMADE=fpcmade.lnx
 endif
 
 # Win32
@@ -567,6 +566,7 @@ SMARTEXT=.slw
 STATICLIBEXT=.aw
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=win32
+FPCMADE=fpcmade.w32
 endif
 
 # OS/2
@@ -578,6 +578,7 @@ SMARTEXT=.so
 STATICLIBEXT=.ao2
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=os2
+FPCMADE=fpcmade.os2
 endif
 
 # library prefix
@@ -638,7 +639,7 @@ info: fpc_info
 #####################################################################
 
 ifneq ($(wildcard $(RTLDIR)),)
-ifeq ($(wildcard $(RTLDIR)/$(FPCMAKED)),)
+ifeq ($(wildcard $(RTLDIR)/$(FPCMADE)),)
 override COMPILEPACKAGES+=rtl
 rtl_package:
 	$(MAKE) -C $(RTLDIR) all
@@ -667,12 +668,12 @@ fpc_units: $(UNITPPUFILES)
 
 .PHONY: fpc_all fpc_debug
 
-$(FPCMAKED):
-	@$(ECHO) Compiled > $(FPCMAKED)
+$(FPCMADE):
+	@$(ECHO) Compiled > $(FPCMADE)
 
 fpc_all: $(addsuffix _package,$(COMPILEPACKAGES)) \
 	 $(addsuffix _component,$(COMPILECOMPONENTS)) \
-	 $(ALLTARGET) $(FPCMAKED)
+	 $(ALLTARGET) $(FPCMADE)
 
 fpc_debug:
 	$(MAKE) all DEBUG=1
@@ -741,7 +742,7 @@ else
 INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLPPUFILES))
 endif
 else
-INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 endif
 endif
 
@@ -872,7 +873,7 @@ ifdef CLEANPPUFILES
 ifdef PPUFILES
 CLEANPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES))
 else
-CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)))
 endif
 endif
 
@@ -889,7 +890,7 @@ endif
 ifdef EXTRACLEANFILES
 	-$(DEL) $(EXTRACLEANFILES)
 endif
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 fpc_cleanall: $(CLEANTARGET)
 ifdef CLEANEXEFILES
@@ -897,7 +898,7 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 #####################################################################
 # Info rules

+ 15 - 14
ide/fake/gdb/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-12-06 18:34
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: all
@@ -386,11 +386,6 @@ endif
 # Default Tools
 #####################################################################
 
-# file used to check if a package is compiled
-ifndef FPCMAKED
-FPCMAKED=fpcmaked
-endif
-
 # assembler, redefine it if cross compiling
 ifndef AS
 AS=as
@@ -536,6 +531,7 @@ SMARTEXT=.sl
 STATICLIBEXT=.a
 SHAREDLIBEXT=.so
 PACKAGESUFFIX=
+FPCMADE=fpcmade
 
 # Go32v1
 ifeq ($(OS_TARGET),go32v1)
@@ -546,16 +542,19 @@ SMARTEXT=.sl1
 STATICLIBEXT=.a1
 SHAREDLIBEXT=.so1
 PACKAGESUFFIX=v1
+FPCMADE=fpcmade.v1
 endif
 
 # Go32v2
 ifeq ($(OS_TARGET),go32v2)
 PACKAGESUFFIX=go32
+FPCMADE=fpcmade.dos
 endif
 
 # Linux
 ifeq ($(OS_TARGET),linux)
 PACKAGESUFFIX=linux
+FPCMADE=fpcmade.lnx
 endif
 
 # Win32
@@ -567,6 +566,7 @@ SMARTEXT=.slw
 STATICLIBEXT=.aw
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=win32
+FPCMADE=fpcmade.w32
 endif
 
 # OS/2
@@ -578,6 +578,7 @@ SMARTEXT=.so
 STATICLIBEXT=.ao2
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=os2
+FPCMADE=fpcmade.os2
 endif
 
 # library prefix
@@ -638,7 +639,7 @@ info: fpc_info
 #####################################################################
 
 ifneq ($(wildcard $(RTLDIR)),)
-ifeq ($(wildcard $(RTLDIR)/$(FPCMAKED)),)
+ifeq ($(wildcard $(RTLDIR)/$(FPCMADE)),)
 override COMPILEPACKAGES+=rtl
 rtl_package:
 	$(MAKE) -C $(RTLDIR) all
@@ -667,12 +668,12 @@ fpc_units: $(UNITPPUFILES)
 
 .PHONY: fpc_all fpc_debug
 
-$(FPCMAKED):
-	@$(ECHO) Compiled > $(FPCMAKED)
+$(FPCMADE):
+	@$(ECHO) Compiled > $(FPCMADE)
 
 fpc_all: $(addsuffix _package,$(COMPILEPACKAGES)) \
 	 $(addsuffix _component,$(COMPILECOMPONENTS)) \
-	 $(ALLTARGET) $(FPCMAKED)
+	 $(ALLTARGET) $(FPCMADE)
 
 fpc_debug:
 	$(MAKE) all DEBUG=1
@@ -741,7 +742,7 @@ else
 INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLPPUFILES))
 endif
 else
-INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 endif
 endif
 
@@ -872,7 +873,7 @@ ifdef CLEANPPUFILES
 ifdef PPUFILES
 CLEANPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES))
 else
-CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)))
 endif
 endif
 
@@ -889,7 +890,7 @@ endif
 ifdef EXTRACLEANFILES
 	-$(DEL) $(EXTRACLEANFILES)
 endif
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 fpc_cleanall: $(CLEANTARGET)
 ifdef CLEANEXEFILES
@@ -897,7 +898,7 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 #####################################################################
 # Info rules

+ 18 - 17
ide/text/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-12-06 18:34
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: all
@@ -465,11 +465,6 @@ endif
 # Default Tools
 #####################################################################
 
-# file used to check if a package is compiled
-ifndef FPCMAKED
-FPCMAKED=fpcmaked
-endif
-
 # assembler, redefine it if cross compiling
 ifndef AS
 AS=as
@@ -615,6 +610,7 @@ SMARTEXT=.sl
 STATICLIBEXT=.a
 SHAREDLIBEXT=.so
 PACKAGESUFFIX=
+FPCMADE=fpcmade
 
 # Go32v1
 ifeq ($(OS_TARGET),go32v1)
@@ -625,16 +621,19 @@ SMARTEXT=.sl1
 STATICLIBEXT=.a1
 SHAREDLIBEXT=.so1
 PACKAGESUFFIX=v1
+FPCMADE=fpcmade.v1
 endif
 
 # Go32v2
 ifeq ($(OS_TARGET),go32v2)
 PACKAGESUFFIX=go32
+FPCMADE=fpcmade.dos
 endif
 
 # Linux
 ifeq ($(OS_TARGET),linux)
 PACKAGESUFFIX=linux
+FPCMADE=fpcmade.lnx
 endif
 
 # Win32
@@ -646,6 +645,7 @@ SMARTEXT=.slw
 STATICLIBEXT=.aw
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=win32
+FPCMADE=fpcmade.w32
 endif
 
 # OS/2
@@ -657,6 +657,7 @@ SMARTEXT=.so
 STATICLIBEXT=.ao2
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=os2
+FPCMADE=fpcmade.os2
 endif
 
 # library prefix
@@ -713,7 +714,7 @@ info: fpc_info
 #####################################################################
 
 ifneq ($(wildcard $(RTLDIR)),)
-ifeq ($(wildcard $(RTLDIR)/$(FPCMAKED)),)
+ifeq ($(wildcard $(RTLDIR)/$(FPCMADE)),)
 override COMPILEPACKAGES+=rtl
 rtl_package:
 	$(MAKE) -C $(RTLDIR) all
@@ -725,7 +726,7 @@ PACKAGEFV=1
 PACKAGEGDBINT=1
 ifdef PACKAGEAPI
 ifneq ($(wildcard $(PACKAGEDIR)/api),)
-ifeq ($(wildcard $(PACKAGEDIR)/api/$(FPCMAKED)),)
+ifeq ($(wildcard $(PACKAGEDIR)/api/$(FPCMADE)),)
 override COMPILEPACKAGES+=api
 api_package:
 	$(MAKE) -C $(PACKAGEDIR)/api all
@@ -734,7 +735,7 @@ endif
 endif
 ifdef PACKAGEFV
 ifneq ($(wildcard $(PACKAGEDIR)/fv),)
-ifeq ($(wildcard $(PACKAGEDIR)/fv/$(FPCMAKED)),)
+ifeq ($(wildcard $(PACKAGEDIR)/fv/$(FPCMADE)),)
 override COMPILEPACKAGES+=fv
 fv_package:
 	$(MAKE) -C $(PACKAGEDIR)/fv all
@@ -743,7 +744,7 @@ endif
 endif
 ifdef PACKAGEGDBINT
 ifneq ($(wildcard $(PACKAGEDIR)/gdbint),)
-ifeq ($(wildcard $(PACKAGEDIR)/gdbint/$(FPCMAKED)),)
+ifeq ($(wildcard $(PACKAGEDIR)/gdbint/$(FPCMADE)),)
 override COMPILEPACKAGES+=gdbint
 gdbint_package:
 	$(MAKE) -C $(PACKAGEDIR)/gdbint all
@@ -774,12 +775,12 @@ fpc_exes: $(EXEFILES)
 
 .PHONY: fpc_all fpc_debug
 
-$(FPCMAKED):
-	@$(ECHO) Compiled > $(FPCMAKED)
+$(FPCMADE):
+	@$(ECHO) Compiled > $(FPCMADE)
 
 fpc_all: $(addsuffix _package,$(COMPILEPACKAGES)) \
 	 $(addsuffix _component,$(COMPILECOMPONENTS)) \
-	 $(ALLTARGET) $(FPCMAKED)
+	 $(ALLTARGET) $(FPCMADE)
 
 fpc_debug:
 	$(MAKE) all DEBUG=1
@@ -848,7 +849,7 @@ else
 INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLPPUFILES))
 endif
 else
-INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 endif
 endif
 
@@ -979,7 +980,7 @@ ifdef CLEANPPUFILES
 ifdef PPUFILES
 CLEANPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES))
 else
-CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)))
 endif
 endif
 
@@ -996,7 +997,7 @@ endif
 ifdef EXTRACLEANFILES
 	-$(DEL) $(EXTRACLEANFILES)
 endif
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 fpc_cleanall: $(CLEANTARGET)
 ifdef CLEANEXEFILES
@@ -1004,7 +1005,7 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 #####################################################################
 # Info rules

+ 246 - 219
install/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-11-10 23:52
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: help
@@ -65,12 +65,17 @@ endif
 
 # What compiler to use ?
 ifndef FPC
+# Compatibility with old makefiles
+ifdef PP
+export FPC=$(PP)
+else
 ifdef inOS2
 export FPC=ppos2$(EXEEXT)
 else
 export FPC=ppc386$(EXEEXT)
 endif
 endif
+endif
 
 # Target OS
 ifndef OS_TARGET
@@ -102,6 +107,10 @@ endif
 #####################################################################
 
 # Release ? Then force OPT and don't use extra opts via commandline
+ifndef REDIRFILE
+REDIRFILE=log
+endif
+
 ifdef RELEASE
 override OPT:=-Xs -OG2p3 -n
 endif
@@ -111,6 +120,15 @@ ifdef VERBOSE
 override OPT+=-vwni
 endif
 
+ifdef REDIR
+ifndef inlinux
+override FPC=redir -eo $(FPC)
+endif
+# set the verbosity to max
+override OPT+=-va
+override REDIR:= >> $(REDIRFILE)
+endif
+
 #####################################################################
 # User Settings
 #####################################################################
@@ -146,6 +164,7 @@ endif
 
 # Install
 
+ZIPTARGET=install
 
 # Defaults
 
@@ -155,6 +174,15 @@ endif
 ifndef FPCDIR
 FPCDIR=..
 endif
+ifndef PACKAGEDIR
+PACKAGEDIR=$(FPCDIR)/packages
+endif
+ifndef COMPONENTDIR
+COMPONENTDIR=$(FPCDIR)/components
+endif
+
+# Packages
+
 
 # Libraries
 
@@ -170,6 +198,11 @@ else
 BASEDIR=.
 endif
 
+# this can be set to 'rtl' when the RTL units are installed
+ifndef UNITPREFIX
+UNITPREFIX=units
+endif
+
 # set the prefix directory where to install everything
 ifndef PREFIXINSTALLDIR
 ifdef inlinux
@@ -179,43 +212,18 @@ export PREFIXINSTALLDIR=/pp
 endif
 endif
 
-# set the directory to the rtl base
-ifndef RTLDIR
-ifdef RTL
-RTLDIR:=$(RTL)/$(OS_TARGET)
-else
-RTLDIR:=$(FPCDIR)/rtl/$(OS_TARGET)
-endif
-endif
-
-# specify where units are.
-ifndef UNITDIR
-ifdef UNITS
-UNITDIR=$(UNITS)/$(OS_TARGET)
-else
-UNITDIR=$(FPCDIR)/units/$(OS_TARGET)
-endif
-endif
-ifeq ($(strip $(wildcard $(UNITDIR)/*)),)
-UNITDIR=
-endif
-
-# On linux, try to find where libgcc.a is.
-ifdef inlinux
-ifndef GCCLIBDIR
-export GCCLIBDIR:=$(shell dirname `(gcc -v 2>&1)| head -n 1| awk '{ print $$4 } '`)
-endif
-endif
-
-# Where to find other libraries
-ifdef inlinux
-ifndef OTHERLIBDIR
-export OTHERLIBDIR:=$(shell grep -v "^\#" /etc/ld.so.conf | awk '{ ORS=" "; print $1 }')
+# create fcldir,rtldir,unitdir
+ifdef FPCDIR
+override FPCDIR:=$(subst \,/,$(FPCDIR))
+ifneq ($(FPCDIR),.)
+override RTLDIR=$(FPCDIR)/rtl/$(OS_TARGET)
+override FCLDIR=$(FPCDIR)/fcl/$(OS_TARGET)
+override UNITSDIR=$(FPCDIR)/units/$(OS_TARGET)
 endif
 endif
 
 #####################################################################
-# Install Directories based on BASEINSTALLDIR
+# Install Directories
 #####################################################################
 
 # set the base directory where to install everything
@@ -227,16 +235,6 @@ BASEINSTALLDIR=$(PREFIXINSTALLDIR)
 endif
 endif
 
-
-# Linux binary really goes to baseinstalldir
-ifndef LIBINSTALLDIR
-ifdef inlinux
-LIBINSTALLDIR=$(BASEINSTALLDIR)
-else
-LIBINSTALLDIR=$(BASEINSTALLDIR)/lib
-endif
-endif
-
 # set the directory where to install the binaries
 ifndef BININSTALLDIR
 ifdef inlinux
@@ -246,15 +244,28 @@ BININSTALLDIR=$(BASEINSTALLDIR)/bin/$(OS_TARGET)
 endif
 endif
 
-# Where the .msg files will be stored
-ifndef MSGINSTALLDIR
-MSGINSTALLDIR=$(BASEINSTALLDIR)/msg
+# set the directory where to install the units.
+ifndef UNITINSTALLDIR
+UNITINSTALLDIR=$(BASEINSTALLDIR)/$(UNITPREFIX)/$(OS_TARGET)
 endif
 
-# Where the .msg files will be stored
+# Where to install shared libraries
+ifndef LIBINSTALLDIR
+ifdef inlinux
+LIBINSTALLDIR=$(PREFIXINSTALLDIR)/lib
+else
+LIBINSTALLDIR=$(UNITINSTALLDIR)
+endif
+endif
+
+# Where the source files will be stored
 ifndef SOURCEINSTALLDIR
+ifdef inlinux
+SOURCEINSTALLDIR=$(PREFIXINSTALLDIR)/src/fpc-$(FPC_VERSION)
+else
 SOURCEINSTALLDIR=$(BASEINSTALLDIR)/source
 endif
+endif
 
 # Where the doc files will be stored
 ifndef DOCINSTALLDIR
@@ -265,42 +276,9 @@ DOCINSTALLDIR=$(BASEINSTALLDIR)/doc
 endif
 endif
 
-########################
-# Unit Directories
-########################
-
-# this can be set to 'rtl' when the RTL units are installed
-ifndef UNITPREFIX
-UNITPREFIX=units
-endif
-
-# set the directory where to install the units.
-ifndef UNITINSTALLDIR
-UNITINSTALLDIR=$(BASEINSTALLDIR)/$(UNITPREFIX)/$(OS_TARGET)
-endif
-
-# set the directory where to install the units.
-ifndef STATIC_UNITINSTALLDIR
-STATIC_UNITINSTALLDIR=$(UNITINSTALLDIR)/static
-endif
-
-# set the directory where to install the units.
-ifndef SHARED_UNITINSTALLDIR
-SHARED_UNITINSTALLDIR=$(UNITINSTALLDIR)/shared
-endif
-
-# set the directory where to install the libs (must exist)
-ifndef STATIC_LIBINSTALLDIR
-STATIC_LIBINSTALLDIR=$(STATIC_UNITINSTALLDIR)
-endif
-
-# set the directory where to install the libs (must exist)
-ifndef SHARED_LIBINSTALLDIR
-ifdef inlinux
-SHARED_LIBINSTALLDIR=$(PREFIXINSTALLDIR)/lib
-else
-SHARED_LIBINSTALLDIR=$(SHARED_UNITINSTALLDIR)
-endif
+# Where the some extra (data)files will be stored
+ifndef EXTRAINSTALLDIR
+EXTRAINSTALLDIR=$(BASEINSTALLDIR)
 endif
 
 
@@ -316,22 +294,22 @@ ifneq ($(OS_TARGET),$(OS_SOURCE))
 override FPCOPT+=-T$(OS_TARGET)
 endif
 
-
-ifdef NEEDOPT
-override FPCOPT+=$(NEEDOPT)
+ifdef RTLDIR
+override FPCOPT+=-Fu$(RTLDIR)
 endif
 
-# RTL first and then Unit dir (a unit can override RTLunit). Don't add the
-# dirs if fpcdir=. which can be used for the rtl makefiles
-ifdef FPCDIR
-ifneq ($(FPCDIR),.)
-override FPCOPT+=-Fu$(FPCDIR)/rtl/$(OS_TARGET) -Fu$(FPCDIR)/units/$(OS_TARGET)
-endif
+ifdef UNITSDIR
+override FPCOPT+=-Fu$(UNITSDIR)
 endif
 
 # Smartlinking
-ifeq ($(SMARTLINK),YES)
-override FPCOPT+=-Cx
+ifdef SMARTLINK
+override FPCOPT+=-CX
+endif
+
+# Debug
+ifdef DEBUG
+override FPCOPT+=-g
 endif
 
 # Add commandline options
@@ -356,12 +334,25 @@ ifdef FPCOPTDEF
 override FPCOPT+=$(FPCOPTDEF)
 endif
 
+# Error file ?
+ifdef ERRORFILE
+override FPCOPT+=-Fr$(ERRORFILE)
+endif
+
 # Was a config file specified ?
 ifdef CFGFILE
 override FPCOPT+=@$(CFGFILE)
 endif
 
-override COMPILER=$(FPC) $(FPCOPT)
+# For win32 the options are passed using the environment variable FPCEXTCMD
+ifeq ($(OS_SOURCE),win32)
+override FPCEXTCMD:=$(FPCOPT)
+override FPCOPT:=!FPCEXTCMD
+export FPCEXTCMD
+endif
+
+# Compiler commandline
+override COMPILER:=$(FPC) $(FPCOPT)
 
 #####################################################################
 # Shell tools
@@ -372,6 +363,11 @@ ifndef COPY
 export COPY:=cp -fp
 endif
 
+# Copy a whole tree
+ifndef COPYTREE
+export COPYTREE:=cp -rfp
+endif
+
 # To move pograms
 ifndef MOVE
 export MOVE:=mv -f
@@ -428,16 +424,6 @@ ifndef LD
 LD=ld
 endif
 
-# Where is the ppumove program ?
-ifndef PPUMOVE
-PPUMOVE=ppumove
-endif
-
-# Where is the ppdep program ?
-ifndef PPDEP
-PPDEP=ppdep
-endif
-
 # ppas.bat / ppas.sh
 ifdef inlinux
 PPAS=ppas.sh
@@ -453,7 +439,7 @@ endif
 ifeq (,$(findstring -s ,$(COMPILER)))
 EXECPPAS=
 else
-EXECPPAS=@$(PPAS)
+EXECPPAS:=@$(PPAS)
 endif
 
 # ldconfig to rebuild .so cache
@@ -473,6 +459,36 @@ export ECHO:=$(firstword $(ECHO))
 endif
 endif
 
+# ppdep
+ifndef PPDEP
+PPDEP:=$(strip $(wildcard $(addsuffix /ppdep$(EXEEXT),$(SEARCHPATH))))
+ifeq ($(PPDEP),)
+PPDEP=
+else
+export PPDEP:=$(firstword $(PPDEP))
+endif
+endif
+
+# ppumove
+ifndef PPUMOVE
+PPUMOVE:=$(strip $(wildcard $(addsuffix /ppumove$(EXEEXT),$(SEARCHPATH))))
+ifeq ($(PPUMOVE),)
+PPUMOVE=
+else
+export PPUMOVE:=$(firstword $(PPUMOVE))
+endif
+endif
+
+# ppufiles
+ifndef PPUFILES
+PPUFILES:=$(strip $(wildcard $(addsuffix /ppufiles$(EXEEXT),$(SEARCHPATH))))
+ifeq ($(PPUFILES),)
+PPUFILES=
+else
+export PPUFILES:=$(firstword $(PPUFILES))
+endif
+endif
+
 # Look if UPX is found for go32v2 and win32. We can't use $UPX becuase
 # upx uses that one itself (PFV)
 ifndef UPXPROG
@@ -543,6 +559,7 @@ SMARTEXT=.sl
 STATICLIBEXT=.a
 SHAREDLIBEXT=.so
 PACKAGESUFFIX=
+FPCMADE=fpcmade
 
 # Go32v1
 ifeq ($(OS_TARGET),go32v1)
@@ -553,16 +570,19 @@ SMARTEXT=.sl1
 STATICLIBEXT=.a1
 SHAREDLIBEXT=.so1
 PACKAGESUFFIX=v1
+FPCMADE=fpcmade.v1
 endif
 
 # Go32v2
 ifeq ($(OS_TARGET),go32v2)
 PACKAGESUFFIX=go32
+FPCMADE=fpcmade.dos
 endif
 
 # Linux
 ifeq ($(OS_TARGET),linux)
 PACKAGESUFFIX=linux
+FPCMADE=fpcmade.lnx
 endif
 
 # Win32
@@ -574,6 +594,7 @@ SMARTEXT=.slw
 STATICLIBEXT=.aw
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=win32
+FPCMADE=fpcmade.w32
 endif
 
 # OS/2
@@ -585,6 +606,7 @@ SMARTEXT=.so
 STATICLIBEXT=.ao2
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=os2
+FPCMADE=fpcmade.os2
 endif
 
 # library prefix
@@ -611,26 +633,22 @@ endif
 endif
 
 #####################################################################
-# Default rules
+# Standard rules
 #####################################################################
 
-.PHONY: defaultrule all staticlib sharedlib showinstall install \
-	staticinstall sharedinstall libinstall zipinstall zipinstalladd \
-	clean cleanall depend info
-
 all: fpc_all
 
-staticlib: fpc_staticlib
+debug: fpc_debug
 
-sharedlib: fpc_sharedlib
+smart: fpc_smart
 
-showinstall: fpc_showinstall
+shared: fpc_shared
 
-staticinstall: fpc_staticinstall
+showinstall: fpc_showinstall
 
-sharedinstall: fpc_sharedinstall
+install: fpc_install
 
-libinstall: fpc_libinstall
+sourceinstall: fpc_sourceinstall
 
 zipinstall: fpc_zipinstall
 
@@ -638,41 +656,44 @@ zipinstalladd: fpc_zipinstalladd
 
 clean: fpc_clean
 
-clean_all: fpc_clean_all
+cleanall: fpc_cleanall
 
-depend: fpc_depend
-
-info: fpc_info
+.PHONY:  all debug smart shared showinstall install sourceinstall zipinstall zipinstalladd clean cleanall
 
 #####################################################################
-# General compile rules
+# Package depends
 #####################################################################
 
-.PHONY: fpc_all fpc_units fpc_exes fpc_loaders
+ifneq ($(wildcard $(RTLDIR)),)
+ifeq ($(wildcard $(RTLDIR)/$(FPCMADE)),)
+override COMPILEPACKAGES+=rtl
+rtl_package:
+	$(MAKE) -C $(RTLDIR) all
+endif
+endif
 
-# Create Filenames
-LOADEROFILES=$(addsuffix $(OEXT),$(LOADEROBJECTS))
-EXEFILES=$(addsuffix $(EXEEXT),$(EXEOBJECTS))
-EXEOFILES=$(addsuffix $(OEXT),$(EXEOBJECTS))
-UNITPPUFILES=$(addsuffix $(PPUEXT),$(UNITOBJECTS))
-UNITOFILES=$(addsuffix $(OEXT),$(UNITOBJECTS))
-UNITAFILES=$(addsuffix $(STATICLIBEXT),$(UNITOBJECTS))
+.PHONY:  rtl_package
 
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+#####################################################################
+# General compile rules
+#####################################################################
 
-ifdef DEFAULTUNITS
-fpc_all: fpc_loaders fpc_units
-else
-fpc_all: fpc_loaders fpc_units fpc_exes
-endif
+.PHONY: fpc_all fpc_debug
 
-fpc_loaders: $(LOADEROFILES)
+$(FPCMADE):
+	@$(ECHO) Compiled > $(FPCMADE)
 
-fpc_units: $(UNITPPUFILES)
+fpc_all: $(addsuffix _package,$(COMPILEPACKAGES)) \
+	 $(addsuffix _component,$(COMPILECOMPONENTS)) \
+	 $(ALLTARGET) $(FPCMADE)
 
-fpc_exes: $(EXEFILES)
+fpc_debug:
+	$(MAKE) all DEBUG=1
 
 # General compile rules, available for both possible PASEXT
+
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+
 %$(PPUEXT): %.pp
 	$(COMPILER) $< $(REDIR)
 	$(EXECPASS)
@@ -689,25 +710,21 @@ fpc_exes: $(EXEFILES)
 	$(COMPILER) $< $(REDIR)
 	$(EXECPASS)
 
-%$(OEXT): %$(LOADEREXT)
-	$(AS) -o $*$(OEXT) $<
-
 #####################################################################
 # Library
 #####################################################################
 
-.PHONY: fpc_staticlib fpc_sharedlib
+.PHONY: fpc_smart fpc_shared
 
 # Default sharedlib units are all unit objects
 ifndef SHAREDLIBUNITOBJECTS
-SHAREDLIBUNITOBJECTS=$(UNITOBJECTS)
+SHAREDLIBUNITOBJECTS:=$(UNITOBJECTS)
 endif
 
-fpc_staticlib:
-	$(MAKE) libsclean
-	$(MAKE) all SMARTLINK=YES
+fpc_smart:
+	$(MAKE) all SMARTLINK=1
 
-fpc_sharedlib: all
+fpc_shared: all
 ifdef inlinux
 ifndef LIBNAME
 	@$(ECHO) LIBNAME not set
@@ -722,56 +739,78 @@ endif
 # Install rules
 #####################################################################
 
-.PHONY: fpc_showinstallfiles fpc_install
+.PHONY: fpc_showinstall fpc_install
 
-ifdef UNITOBJECTS
-override UNITINSTALLFILES=$(wildcard $(UNITPPUFILES) $(UNITOFILES) $(UNITAFILES))
-endif
 ifdef EXTRAINSTALLUNITS
-override EXTRAINSTALLFILES+=$(wildcard $(addsuffix $(OEXT),$(EXTRAINSTALLUNITS)) $(addsuffix $(STATICLIBEXT),$(EXTRAINSTALLUNITS)) $(addsuffix $(PPUEXT),$(EXTRAINSTALLUNITS)))
+override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(EXTRAINSTALLUNITS))
 endif
 
-fpc_showinstallfiles : all
-ifndef DEFAULTUNITS
-ifdef EXEOBJECTS
-	@$(ECHO) $(addprefix "\n"$(BININSTALLDIR)/,$(EXEFILES))
+ifdef INSTALLPPUFILES
+ifdef PPUFILES
+ifdef inlinux
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
+INSTALLPPULIBFILES:=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
+else
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLPPUFILES))
+endif
+else
+INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
+endif
+endif
+
+fpc_showinstall: $(SHOWINSTALLTARGET)
+ifdef INSTALLEXEFILES
+	@$(ECHO) $(addprefix "\n"$(BININSTALLDIR)/,$(INSTALLEXEFILES))
 endif
+ifdef INSTALLPPUFILES
+	@$(ECHO) $(addprefix "\n"$(UNITINSTALLDIR)/,$(INSTALLPPUFILES))
+ifneq ($(INSTALLPPULINKFILES),)
+	@$(ECHO) $(addprefix "\n"$(UNITINSTALLDIR)/,$(INSTALLPPULINKFILES))
 endif
-ifdef LOADEROBJECTS
-	@$(ECHO) $(addprefix "\n"$(UNITINSTALLDIR)/,$(LOADEROFILES))
+ifneq ($(INSTALLPPULIBFILES),)
+	@$(ECHO) $(addprefix "\n"$(LIBINSTALLDIR)/,$(INSTALLPPULIBFILES))
 endif
-ifdef UNITINSTALLFILES
-	@$(ECHO) $(addprefix "\n"$(UNITINSTALLDIR)/,$(UNITINSTALLFILES))
 endif
 ifdef EXTRAINSTALLFILES
-	@$(ECHO) $(addprefix "\n"$(UNITINSTALLDIR)/,$(EXTRAINSTALLFILES))
+	@$(ECHO) $(addprefix "\n"$(EXTRAINSTALLDIR)/,$(EXTRAINSTALLFILES))
 endif
 
-fpc_install:
+fpc_install: $(INSTALLTARGET)
 # Create UnitInstallFiles
-ifndef DEFAULTUNITS
-ifdef EXEOBJECTS
+ifdef INSTALLEXEFILES
 	$(MKDIR) $(BININSTALLDIR)
 # Compress the exes if upx is defined
 ifdef UPXPROG
-	-$(UPXPROG) $(EXEFILES)
-endif
-	$(INSTALLEXE) $(EXEFILES) $(BININSTALLDIR)
+	-$(UPXPROG) $(INSTALLEXEFILES)
 endif
+	$(INSTALLEXE) $(INSTALLEXEFILES) $(BININSTALLDIR)
 endif
-ifdef LOADEROBJECTS
+ifdef INSTALLPPUFILES
 	$(MKDIR) $(UNITINSTALLDIR)
-	$(INSTALL) $(LOADEROFILES) $(UNITINSTALLDIR)
+	$(INSTALL) $(INSTALLPPUFILES) $(UNITINSTALLDIR)
+ifneq ($(INSTALLPPULINKFILES),)
+	$(INSTALL) $(INSTALLPPULINKFILES) $(UNITINSTALLDIR)
+endif
+ifneq ($(INSTALLPPULIBFILES),)
+	$(MKDIR) $(LIBINSTALLDIR)
+	$(INSTALL) $(INSTALLPPULIBFILES) $(LIBINSTALLDIR)
 endif
-ifdef UNITINSTALLFILES
-	$(MKDIR) $(UNITINSTALLDIR)
-	$(INSTALL) $(UNITINSTALLFILES) $(UNITINSTALLDIR)
 endif
 ifdef EXTRAINSTALLFILES
-	$(MKDIR) $(UNITINSTALLDIR)
-	$(INSTALL) $(EXTRAINSTALLFILES) $(UNITINSTALLDIR)
+	$(MKDIR) $(EXTRAINSTALLDIR)
+	$(INSTALL) $(EXTRAINSTALLFILES) $(EXTRAINSTALLDIR)
 endif
 
+#####################################################################
+# Source install rules
+#####################################################################
+
+.PHONY: fpc_sourceinstall
+
+fpc_sourceinstall: clean
+	$(MKDIR) $(SOURCEINSTALLDIR)
+	$(COPYTREE) $(BASEDIR) $(SOURCEINSTALLDIR)
+
 #####################################################################
 # Zip
 #####################################################################
@@ -788,8 +827,8 @@ endif
 endif
 
 # Test dir if none specified
-ifndef PACKAGEDIR
-PACKAGEDIR=$(BASEDIR)
+ifndef DESTZIPDIR
+DESTZIPDIR:=$(BASEDIR)
 endif
 
 # Add .zip/.tar.gz extension
@@ -799,11 +838,6 @@ override ZIPNAME:=$(ZIPNAME)$(ZIPEXT)
 endif
 endif
 
-# Default target which is call before zipping
-ifndef ZIPTARGET
-ZIPTARGET=install
-endif
-
 # Note: This will not remove the zipfile first
 fpc_zipinstalladd:
 ifndef ZIPNAME
@@ -812,11 +846,11 @@ ifndef ZIPNAME
 else
 	$(MAKE) $(ZIPTARGET) PREFIXINSTALLDIR=$(PACKDIR)
 ifdef inlinux
-	gzip -d $(PACKAGEDIR)/$(ZIPNAME).tar.gz
-	cd $(PACKDIR) ; tar rv --file $(PACKAGEDIR)/$(ZIPNAME).tar * ; cd $(BASEDIR)
-	gzip $(PACKAGEDIR)/$(ZIPNAME).tar
+	gzip -d $(DESTZIPDIR)/$(ZIPNAME).tar.gz
+	cd $(PACKDIR) ; tar rv --file $(DESTZIPDIR)/$(ZIPNAME).tar * ; cd $(BASEDIR)
+	gzip $(DESTZIPDIR)/$(ZIPNAME).tar
 else
-	cd $(PACKDIR) ; $(ZIPPROG) $(PACKAGEDIR)/$(ZIPNAME) * ; cd $(BASEDIR)
+	cd $(PACKDIR) ; $(ZIPPROG) $(DESTZIPDIR)/$(ZIPNAME) * ; cd $(BASEDIR)
 endif
 	$(DELTREE) $(PACKDIR)
 endif
@@ -827,12 +861,12 @@ ifndef ZIPNAME
 	@$(ECHO) Please specify ZIPNAME!
 	@exit
 else
-	$(DEL) $(PACKAGEDIR)/$(ZIPNAME)
+	$(DEL) $(DESTZIPDIR)/$(ZIPNAME)
 	$(MAKE) $(ZIPTARGET) PREFIXINSTALLDIR=$(PACKDIR)
 ifdef inlinux
-	cd $(PACKDIR) ; tar cvz --file $(PACKAGEDIR)/$(ZIPNAME).tar.gz * ; cd $(BASEDIR)
+	cd $(PACKDIR) ; tar cvz --file $(DESTZIPDIR)/$(ZIPNAME).tar.gz * ; cd $(BASEDIR)
 else
-	cd $(PACKDIR) ; $(ZIPPROG) $(PACKAGEDIR)/$(ZIPNAME) * ; cd $(BASEDIR)
+	cd $(PACKDIR) ; $(ZIPPROG) $(DESTZIPDIR)/$(ZIPNAME) * ; cd $(BASEDIR)
 endif
 	$(DELTREE) $(PACKDIR)
 endif
@@ -841,54 +875,47 @@ endif
 # Clean rules
 #####################################################################
 
-.PHONY: fpc_clean fpc_libsclean fpc_cleanall
+.PHONY: fpc_clean fpc_cleanall
 
-ifdef UNITOBJECTS
-override UNITCLEANFILES=$(wildcard $(UNITPPUFILES) $(UNITOFILES) $(UNITAFILES))
-endif
 ifdef EXTRACLEANUNITS
-override EXTRACLEANFILES+=$(wildcard $(addsuffix $(OEXT),$(EXTRACLEANUNITS)) $(addsuffix $(STATICLIBEXT),$(EXTRACLEANUNITS)) $(addsuffix $(PPUEXT),$(EXTRACLEANUNITS)))
+override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(EXTRACLEANUNITS))
 endif
 
-fpc_clean:
-ifdef EXEOBJECTS
-	-$(DEL) $(EXEFILES) $(EXEOFILES)
+ifdef CLEANPPUFILES
+ifdef PPUFILES
+CLEANPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES))
+else
+CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)))
+endif
 endif
-ifdef LOADEROBJECTS
-	-$(DEL) $(LOADEROFILES)
+
+fpc_clean: $(CLEANTARGET)
+ifdef CLEANEXEFILES
+	-$(DEL) $(CLEANEXEFILES)
+endif
+ifdef CLEANPPUFILES
+	-$(DEL) $(CLEANPPUFILES)
 endif
-ifdef UNITCLEANFILES
-	-$(DEL) $(UNITCLEANFILES)
+ifneq ($(CLEANPPULINKFILES),)
+	-$(DEL) $(CLEANPPULINKFILES)
 endif
 ifdef EXTRACLEANFILES
 	-$(DEL) $(EXTRACLEANFILES)
 endif
-	-$(DEL) $(PPAS) link.res log
-
-fpc_libsclean: clean
-	-$(DEL) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
-fpc_cleanall:
-ifdef EXEOBJECTS
-	-$(DEL) $(EXEFILES)
+fpc_cleanall: $(CLEANTARGET)
+ifdef CLEANEXEFILES
+	-$(DEL) $(CLEANEXEFILES)
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-
-#####################################################################
-# Depend rules
-#####################################################################
-
-.PHONY: fpc_depend
-
-fpc_depend:
-	$(PPDEP) $(UNITOBJECTS)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 #####################################################################
 # Users rules
 #####################################################################
 
-
 help:
 	@echo
 	@echo Possible targets are:

+ 284 - 229
install/demo/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-11-10 23:52
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: all
@@ -65,12 +65,17 @@ endif
 
 # What compiler to use ?
 ifndef FPC
+# Compatibility with old makefiles
+ifdef PP
+export FPC=$(PP)
+else
 ifdef inOS2
 export FPC=ppos2$(EXEEXT)
 else
 export FPC=ppc386$(EXEEXT)
 endif
 endif
+endif
 
 # Target OS
 ifndef OS_TARGET
@@ -102,6 +107,10 @@ endif
 #####################################################################
 
 # Release ? Then force OPT and don't use extra opts via commandline
+ifndef REDIRFILE
+REDIRFILE=log
+endif
+
 ifdef RELEASE
 override OPT:=-Xs -OG2p3 -n
 endif
@@ -111,6 +120,15 @@ ifdef VERBOSE
 override OPT+=-vwni
 endif
 
+ifdef REDIR
+ifndef inlinux
+override FPC=redir -eo $(FPC)
+endif
+# set the verbosity to max
+override OPT+=-va
+override REDIR:= >> $(REDIRFILE)
+endif
+
 #####################################################################
 # User Settings
 #####################################################################
@@ -118,15 +136,15 @@ endif
 
 # Targets
 
-EXEOBJECTS=eratos qsort hello blackbox magic lines fpctris
+override EXEOBJECTS+=eratos qsort hello blackbox magic lines fpctris
 ifeq ($(OS_TARGET),linux)
-EXEOBJECTS+=mandel samegame
+override EXEOBJECTS+=mandel samegame
 endif
 ifeq ($(OS_TARGET),go32v2)
-EXEOBJECTS+=mandel samegame
+override EXEOBJECTS+=mandel samegame
 endif
 ifeq ($(OS_TARGET),win32)
-EXEOBJECTS+=winhello menu mandel dlltest testdll
+override EXEOBJECTS+=winhello menu mandel dlltest testdll
 endif
 
 # Clean
@@ -134,6 +152,7 @@ endif
 
 # Install
 
+ZIPTARGET=install
 
 # Defaults
 
@@ -143,17 +162,26 @@ endif
 ifndef FPCDIR
 FPCDIR=../..
 endif
+ifndef PACKAGEDIR
+PACKAGEDIR=$(FPCDIR)/packages
+endif
+ifndef COMPONENTDIR
+COMPONENTDIR=$(FPCDIR)/components
+endif
 override NEEDUNITDIR=$(FPCDIR)/api
 ifndef TARGETDIR
 TARGETDIR=.
 endif
 
+# Packages
+
+
 # Libraries
 
 
 # Info
 
-FPCINFO=fpc_infocfg fpc_infoobjects fpc_infoinstall 
+INFOTARGET=fpc_infocfg fpc_infoobjects fpc_infoinstall 
 
 #####################################################################
 # Default Directories
@@ -166,6 +194,11 @@ else
 BASEDIR=.
 endif
 
+# this can be set to 'rtl' when the RTL units are installed
+ifndef UNITPREFIX
+UNITPREFIX=units
+endif
+
 # set the prefix directory where to install everything
 ifndef PREFIXINSTALLDIR
 ifdef inlinux
@@ -175,43 +208,18 @@ export PREFIXINSTALLDIR=/pp
 endif
 endif
 
-# set the directory to the rtl base
-ifndef RTLDIR
-ifdef RTL
-RTLDIR:=$(RTL)/$(OS_TARGET)
-else
-RTLDIR:=$(FPCDIR)/rtl/$(OS_TARGET)
-endif
-endif
-
-# specify where units are.
-ifndef UNITDIR
-ifdef UNITS
-UNITDIR=$(UNITS)/$(OS_TARGET)
-else
-UNITDIR=$(FPCDIR)/units/$(OS_TARGET)
-endif
-endif
-ifeq ($(strip $(wildcard $(UNITDIR)/*)),)
-UNITDIR=
-endif
-
-# On linux, try to find where libgcc.a is.
-ifdef inlinux
-ifndef GCCLIBDIR
-export GCCLIBDIR:=$(shell dirname `(gcc -v 2>&1)| head -n 1| awk '{ print $$4 } '`)
-endif
-endif
-
-# Where to find other libraries
-ifdef inlinux
-ifndef OTHERLIBDIR
-export OTHERLIBDIR:=$(shell grep -v "^\#" /etc/ld.so.conf | awk '{ ORS=" "; print $1 }')
+# create fcldir,rtldir,unitdir
+ifdef FPCDIR
+override FPCDIR:=$(subst \,/,$(FPCDIR))
+ifneq ($(FPCDIR),.)
+override RTLDIR=$(FPCDIR)/rtl/$(OS_TARGET)
+override FCLDIR=$(FPCDIR)/fcl/$(OS_TARGET)
+override UNITSDIR=$(FPCDIR)/units/$(OS_TARGET)
 endif
 endif
 
 #####################################################################
-# Install Directories based on BASEINSTALLDIR
+# Install Directories
 #####################################################################
 
 # set the base directory where to install everything
@@ -223,16 +231,6 @@ BASEINSTALLDIR=$(PREFIXINSTALLDIR)
 endif
 endif
 
-
-# Linux binary really goes to baseinstalldir
-ifndef LIBINSTALLDIR
-ifdef inlinux
-LIBINSTALLDIR=$(BASEINSTALLDIR)
-else
-LIBINSTALLDIR=$(BASEINSTALLDIR)/lib
-endif
-endif
-
 # set the directory where to install the binaries
 ifndef BININSTALLDIR
 ifdef inlinux
@@ -242,15 +240,28 @@ BININSTALLDIR=$(BASEINSTALLDIR)/bin/$(OS_TARGET)
 endif
 endif
 
-# Where the .msg files will be stored
-ifndef MSGINSTALLDIR
-MSGINSTALLDIR=$(BASEINSTALLDIR)/msg
+# set the directory where to install the units.
+ifndef UNITINSTALLDIR
+UNITINSTALLDIR=$(BASEINSTALLDIR)/$(UNITPREFIX)/$(OS_TARGET)
 endif
 
-# Where the .msg files will be stored
+# Where to install shared libraries
+ifndef LIBINSTALLDIR
+ifdef inlinux
+LIBINSTALLDIR=$(PREFIXINSTALLDIR)/lib
+else
+LIBINSTALLDIR=$(UNITINSTALLDIR)
+endif
+endif
+
+# Where the source files will be stored
 ifndef SOURCEINSTALLDIR
+ifdef inlinux
+SOURCEINSTALLDIR=$(PREFIXINSTALLDIR)/src/fpc-$(FPC_VERSION)
+else
 SOURCEINSTALLDIR=$(BASEINSTALLDIR)/source
 endif
+endif
 
 # Where the doc files will be stored
 ifndef DOCINSTALLDIR
@@ -261,42 +272,9 @@ DOCINSTALLDIR=$(BASEINSTALLDIR)/doc
 endif
 endif
 
-########################
-# Unit Directories
-########################
-
-# this can be set to 'rtl' when the RTL units are installed
-ifndef UNITPREFIX
-UNITPREFIX=units
-endif
-
-# set the directory where to install the units.
-ifndef UNITINSTALLDIR
-UNITINSTALLDIR=$(BASEINSTALLDIR)/$(UNITPREFIX)/$(OS_TARGET)
-endif
-
-# set the directory where to install the units.
-ifndef STATIC_UNITINSTALLDIR
-STATIC_UNITINSTALLDIR=$(UNITINSTALLDIR)/static
-endif
-
-# set the directory where to install the units.
-ifndef SHARED_UNITINSTALLDIR
-SHARED_UNITINSTALLDIR=$(UNITINSTALLDIR)/shared
-endif
-
-# set the directory where to install the libs (must exist)
-ifndef STATIC_LIBINSTALLDIR
-STATIC_LIBINSTALLDIR=$(STATIC_UNITINSTALLDIR)
-endif
-
-# set the directory where to install the libs (must exist)
-ifndef SHARED_LIBINSTALLDIR
-ifdef inlinux
-SHARED_LIBINSTALLDIR=$(PREFIXINSTALLDIR)/lib
-else
-SHARED_LIBINSTALLDIR=$(SHARED_UNITINSTALLDIR)
-endif
+# Where the some extra (data)files will be stored
+ifndef EXTRAINSTALLDIR
+EXTRAINSTALLDIR=$(BASEINSTALLDIR)
 endif
 
 
@@ -312,17 +290,12 @@ ifneq ($(OS_TARGET),$(OS_SOURCE))
 override FPCOPT+=-T$(OS_TARGET)
 endif
 
-
-ifdef NEEDOPT
-override FPCOPT+=$(NEEDOPT)
+ifdef RTLDIR
+override FPCOPT+=-Fu$(RTLDIR)
 endif
 
-# RTL first and then Unit dir (a unit can override RTLunit). Don't add the
-# dirs if fpcdir=. which can be used for the rtl makefiles
-ifdef FPCDIR
-ifneq ($(FPCDIR),.)
-override FPCOPT+=-Fu$(FPCDIR)/rtl/$(OS_TARGET) -Fu$(FPCDIR)/units/$(OS_TARGET)
-endif
+ifdef UNITSDIR
+override FPCOPT+=-Fu$(UNITSDIR)
 endif
 
 ifdef NEEDUNITDIR
@@ -335,8 +308,13 @@ override FPCOPT+=-FE$(TARGETDIR)
 endif
 
 # Smartlinking
-ifeq ($(SMARTLINK),YES)
-override FPCOPT+=-Cx
+ifdef SMARTLINK
+override FPCOPT+=-CX
+endif
+
+# Debug
+ifdef DEBUG
+override FPCOPT+=-g
 endif
 
 # Add commandline options
@@ -361,12 +339,25 @@ ifdef FPCOPTDEF
 override FPCOPT+=$(FPCOPTDEF)
 endif
 
+# Error file ?
+ifdef ERRORFILE
+override FPCOPT+=-Fr$(ERRORFILE)
+endif
+
 # Was a config file specified ?
 ifdef CFGFILE
 override FPCOPT+=@$(CFGFILE)
 endif
 
-override COMPILER=$(FPC) $(FPCOPT)
+# For win32 the options are passed using the environment variable FPCEXTCMD
+ifeq ($(OS_SOURCE),win32)
+override FPCEXTCMD:=$(FPCOPT)
+override FPCOPT:=!FPCEXTCMD
+export FPCEXTCMD
+endif
+
+# Compiler commandline
+override COMPILER:=$(FPC) $(FPCOPT)
 
 #####################################################################
 # Shell tools
@@ -377,6 +368,11 @@ ifndef COPY
 export COPY:=cp -fp
 endif
 
+# Copy a whole tree
+ifndef COPYTREE
+export COPYTREE:=cp -rfp
+endif
+
 # To move pograms
 ifndef MOVE
 export MOVE:=mv -f
@@ -433,16 +429,6 @@ ifndef LD
 LD=ld
 endif
 
-# Where is the ppumove program ?
-ifndef PPUMOVE
-PPUMOVE=ppumove
-endif
-
-# Where is the ppdep program ?
-ifndef PPDEP
-PPDEP=ppdep
-endif
-
 # ppas.bat / ppas.sh
 ifdef inlinux
 PPAS=ppas.sh
@@ -458,7 +444,7 @@ endif
 ifeq (,$(findstring -s ,$(COMPILER)))
 EXECPPAS=
 else
-EXECPPAS=@$(PPAS)
+EXECPPAS:=@$(PPAS)
 endif
 
 # ldconfig to rebuild .so cache
@@ -478,6 +464,36 @@ export ECHO:=$(firstword $(ECHO))
 endif
 endif
 
+# ppdep
+ifndef PPDEP
+PPDEP:=$(strip $(wildcard $(addsuffix /ppdep$(EXEEXT),$(SEARCHPATH))))
+ifeq ($(PPDEP),)
+PPDEP=
+else
+export PPDEP:=$(firstword $(PPDEP))
+endif
+endif
+
+# ppumove
+ifndef PPUMOVE
+PPUMOVE:=$(strip $(wildcard $(addsuffix /ppumove$(EXEEXT),$(SEARCHPATH))))
+ifeq ($(PPUMOVE),)
+PPUMOVE=
+else
+export PPUMOVE:=$(firstword $(PPUMOVE))
+endif
+endif
+
+# ppufiles
+ifndef PPUFILES
+PPUFILES:=$(strip $(wildcard $(addsuffix /ppufiles$(EXEEXT),$(SEARCHPATH))))
+ifeq ($(PPUFILES),)
+PPUFILES=
+else
+export PPUFILES:=$(firstword $(PPUFILES))
+endif
+endif
+
 # Look if UPX is found for go32v2 and win32. We can't use $UPX becuase
 # upx uses that one itself (PFV)
 ifndef UPXPROG
@@ -548,6 +564,7 @@ SMARTEXT=.sl
 STATICLIBEXT=.a
 SHAREDLIBEXT=.so
 PACKAGESUFFIX=
+FPCMADE=fpcmade
 
 # Go32v1
 ifeq ($(OS_TARGET),go32v1)
@@ -558,16 +575,19 @@ SMARTEXT=.sl1
 STATICLIBEXT=.a1
 SHAREDLIBEXT=.so1
 PACKAGESUFFIX=v1
+FPCMADE=fpcmade.v1
 endif
 
 # Go32v2
 ifeq ($(OS_TARGET),go32v2)
 PACKAGESUFFIX=go32
+FPCMADE=fpcmade.dos
 endif
 
 # Linux
 ifeq ($(OS_TARGET),linux)
 PACKAGESUFFIX=linux
+FPCMADE=fpcmade.lnx
 endif
 
 # Win32
@@ -579,6 +599,7 @@ SMARTEXT=.slw
 STATICLIBEXT=.aw
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=win32
+FPCMADE=fpcmade.w32
 endif
 
 # OS/2
@@ -590,6 +611,7 @@ SMARTEXT=.so
 STATICLIBEXT=.ao2
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=os2
+FPCMADE=fpcmade.os2
 endif
 
 # library prefix
@@ -616,26 +638,22 @@ endif
 endif
 
 #####################################################################
-# Default rules
+# Standard rules
 #####################################################################
 
-.PHONY: defaultrule all staticlib sharedlib showinstall install \
-	staticinstall sharedinstall libinstall zipinstall zipinstalladd \
-	clean cleanall depend info
-
 all: fpc_all
 
-staticlib: fpc_staticlib
+debug: fpc_debug
 
-sharedlib: fpc_sharedlib
+smart: fpc_smart
 
-showinstall: fpc_showinstall
+shared: fpc_shared
 
-staticinstall: fpc_staticinstall
+showinstall: fpc_showinstall
 
-sharedinstall: fpc_sharedinstall
+install: fpc_install
 
-libinstall: fpc_libinstall
+sourceinstall: fpc_sourceinstall
 
 zipinstall: fpc_zipinstall
 
@@ -643,41 +661,61 @@ zipinstalladd: fpc_zipinstalladd
 
 clean: fpc_clean
 
-clean_all: fpc_clean_all
-
-depend: fpc_depend
+cleanall: fpc_cleanall
 
 info: fpc_info
 
+.PHONY:  all debug smart shared showinstall install sourceinstall zipinstall zipinstalladd clean cleanall info
+
 #####################################################################
-# General compile rules
+# Package depends
 #####################################################################
 
-.PHONY: fpc_all fpc_units fpc_exes fpc_loaders
+ifneq ($(wildcard $(RTLDIR)),)
+ifeq ($(wildcard $(RTLDIR)/$(FPCMADE)),)
+override COMPILEPACKAGES+=rtl
+rtl_package:
+	$(MAKE) -C $(RTLDIR) all
+endif
+endif
 
-# Create Filenames
-LOADEROFILES=$(addsuffix $(OEXT),$(LOADEROBJECTS))
-EXEFILES=$(addsuffix $(EXEEXT),$(EXEOBJECTS))
-EXEOFILES=$(addsuffix $(OEXT),$(EXEOBJECTS))
-UNITPPUFILES=$(addsuffix $(PPUEXT),$(UNITOBJECTS))
-UNITOFILES=$(addsuffix $(OEXT),$(UNITOBJECTS))
-UNITAFILES=$(addsuffix $(STATICLIBEXT),$(UNITOBJECTS))
+.PHONY:  rtl_package
 
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+#####################################################################
+# Exes
+#####################################################################
 
-ifdef DEFAULTUNITS
-fpc_all: fpc_loaders fpc_units
-else
-fpc_all: fpc_loaders fpc_units fpc_exes
-endif
+.PHONY: fpc_exes
 
-fpc_loaders: $(LOADEROFILES)
+override EXEFILES=$(addsuffix $(EXEEXT),$(EXEOBJECTS))
+override EXEOFILES=$(addsuffix $(OEXT),$(EXEOBJECTS))
 
-fpc_units: $(UNITPPUFILES)
+override ALLTARGET+=fpc_exes
+override INSTALLEXEFILES+=$(EXEFILES)
+override CLEANEXEFILES+=$(EXEFILES) $(EXEOFILES)
 
 fpc_exes: $(EXEFILES)
 
+#####################################################################
+# General compile rules
+#####################################################################
+
+.PHONY: fpc_all fpc_debug
+
+$(FPCMADE):
+	@$(ECHO) Compiled > $(FPCMADE)
+
+fpc_all: $(addsuffix _package,$(COMPILEPACKAGES)) \
+	 $(addsuffix _component,$(COMPILECOMPONENTS)) \
+	 $(ALLTARGET) $(FPCMADE)
+
+fpc_debug:
+	$(MAKE) all DEBUG=1
+
 # General compile rules, available for both possible PASEXT
+
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+
 %$(PPUEXT): %.pp
 	$(COMPILER) $< $(REDIR)
 	$(EXECPASS)
@@ -694,25 +732,21 @@ fpc_exes: $(EXEFILES)
 	$(COMPILER) $< $(REDIR)
 	$(EXECPASS)
 
-%$(OEXT): %$(LOADEREXT)
-	$(AS) -o $*$(OEXT) $<
-
 #####################################################################
 # Library
 #####################################################################
 
-.PHONY: fpc_staticlib fpc_sharedlib
+.PHONY: fpc_smart fpc_shared
 
 # Default sharedlib units are all unit objects
 ifndef SHAREDLIBUNITOBJECTS
-SHAREDLIBUNITOBJECTS=$(UNITOBJECTS)
+SHAREDLIBUNITOBJECTS:=$(UNITOBJECTS)
 endif
 
-fpc_staticlib:
-	$(MAKE) libsclean
-	$(MAKE) all SMARTLINK=YES
+fpc_smart:
+	$(MAKE) all SMARTLINK=1
 
-fpc_sharedlib: all
+fpc_shared: all
 ifdef inlinux
 ifndef LIBNAME
 	@$(ECHO) LIBNAME not set
@@ -727,56 +761,78 @@ endif
 # Install rules
 #####################################################################
 
-.PHONY: fpc_showinstallfiles fpc_install
+.PHONY: fpc_showinstall fpc_install
 
-ifdef UNITOBJECTS
-override UNITINSTALLFILES=$(wildcard $(UNITPPUFILES) $(UNITOFILES) $(UNITAFILES))
-endif
 ifdef EXTRAINSTALLUNITS
-override EXTRAINSTALLFILES+=$(wildcard $(addsuffix $(OEXT),$(EXTRAINSTALLUNITS)) $(addsuffix $(STATICLIBEXT),$(EXTRAINSTALLUNITS)) $(addsuffix $(PPUEXT),$(EXTRAINSTALLUNITS)))
+override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(EXTRAINSTALLUNITS))
 endif
 
-fpc_showinstallfiles : all
-ifndef DEFAULTUNITS
-ifdef EXEOBJECTS
-	@$(ECHO) $(addprefix "\n"$(BININSTALLDIR)/,$(EXEFILES))
+ifdef INSTALLPPUFILES
+ifdef PPUFILES
+ifdef inlinux
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
+INSTALLPPULIBFILES:=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
+else
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLPPUFILES))
 endif
+else
+INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 endif
-ifdef LOADEROBJECTS
-	@$(ECHO) $(addprefix "\n"$(UNITINSTALLDIR)/,$(LOADEROFILES))
 endif
-ifdef UNITINSTALLFILES
-	@$(ECHO) $(addprefix "\n"$(UNITINSTALLDIR)/,$(UNITINSTALLFILES))
+
+fpc_showinstall: $(SHOWINSTALLTARGET)
+ifdef INSTALLEXEFILES
+	@$(ECHO) $(addprefix "\n"$(BININSTALLDIR)/,$(INSTALLEXEFILES))
+endif
+ifdef INSTALLPPUFILES
+	@$(ECHO) $(addprefix "\n"$(UNITINSTALLDIR)/,$(INSTALLPPUFILES))
+ifneq ($(INSTALLPPULINKFILES),)
+	@$(ECHO) $(addprefix "\n"$(UNITINSTALLDIR)/,$(INSTALLPPULINKFILES))
+endif
+ifneq ($(INSTALLPPULIBFILES),)
+	@$(ECHO) $(addprefix "\n"$(LIBINSTALLDIR)/,$(INSTALLPPULIBFILES))
+endif
 endif
 ifdef EXTRAINSTALLFILES
-	@$(ECHO) $(addprefix "\n"$(UNITINSTALLDIR)/,$(EXTRAINSTALLFILES))
+	@$(ECHO) $(addprefix "\n"$(EXTRAINSTALLDIR)/,$(EXTRAINSTALLFILES))
 endif
 
-fpc_install:
+fpc_install: $(INSTALLTARGET)
 # Create UnitInstallFiles
-ifndef DEFAULTUNITS
-ifdef EXEOBJECTS
+ifdef INSTALLEXEFILES
 	$(MKDIR) $(BININSTALLDIR)
 # Compress the exes if upx is defined
 ifdef UPXPROG
-	-$(UPXPROG) $(EXEFILES)
-endif
-	$(INSTALLEXE) $(EXEFILES) $(BININSTALLDIR)
+	-$(UPXPROG) $(INSTALLEXEFILES)
 endif
+	$(INSTALLEXE) $(INSTALLEXEFILES) $(BININSTALLDIR)
 endif
-ifdef LOADEROBJECTS
+ifdef INSTALLPPUFILES
 	$(MKDIR) $(UNITINSTALLDIR)
-	$(INSTALL) $(LOADEROFILES) $(UNITINSTALLDIR)
+	$(INSTALL) $(INSTALLPPUFILES) $(UNITINSTALLDIR)
+ifneq ($(INSTALLPPULINKFILES),)
+	$(INSTALL) $(INSTALLPPULINKFILES) $(UNITINSTALLDIR)
+endif
+ifneq ($(INSTALLPPULIBFILES),)
+	$(MKDIR) $(LIBINSTALLDIR)
+	$(INSTALL) $(INSTALLPPULIBFILES) $(LIBINSTALLDIR)
 endif
-ifdef UNITINSTALLFILES
-	$(MKDIR) $(UNITINSTALLDIR)
-	$(INSTALL) $(UNITINSTALLFILES) $(UNITINSTALLDIR)
 endif
 ifdef EXTRAINSTALLFILES
-	$(MKDIR) $(UNITINSTALLDIR)
-	$(INSTALL) $(EXTRAINSTALLFILES) $(UNITINSTALLDIR)
+	$(MKDIR) $(EXTRAINSTALLDIR)
+	$(INSTALL) $(EXTRAINSTALLFILES) $(EXTRAINSTALLDIR)
 endif
 
+#####################################################################
+# Source install rules
+#####################################################################
+
+.PHONY: fpc_sourceinstall
+
+fpc_sourceinstall: clean
+	$(MKDIR) $(SOURCEINSTALLDIR)
+	$(COPYTREE) $(BASEDIR) $(SOURCEINSTALLDIR)
+
 #####################################################################
 # Zip
 #####################################################################
@@ -793,8 +849,8 @@ endif
 endif
 
 # Test dir if none specified
-ifndef PACKAGEDIR
-PACKAGEDIR=$(BASEDIR)
+ifndef DESTZIPDIR
+DESTZIPDIR:=$(BASEDIR)
 endif
 
 # Add .zip/.tar.gz extension
@@ -804,11 +860,6 @@ override ZIPNAME:=$(ZIPNAME)$(ZIPEXT)
 endif
 endif
 
-# Default target which is call before zipping
-ifndef ZIPTARGET
-ZIPTARGET=install
-endif
-
 # Note: This will not remove the zipfile first
 fpc_zipinstalladd:
 ifndef ZIPNAME
@@ -817,11 +868,11 @@ ifndef ZIPNAME
 else
 	$(MAKE) $(ZIPTARGET) PREFIXINSTALLDIR=$(PACKDIR)
 ifdef inlinux
-	gzip -d $(PACKAGEDIR)/$(ZIPNAME).tar.gz
-	cd $(PACKDIR) ; tar rv --file $(PACKAGEDIR)/$(ZIPNAME).tar * ; cd $(BASEDIR)
-	gzip $(PACKAGEDIR)/$(ZIPNAME).tar
+	gzip -d $(DESTZIPDIR)/$(ZIPNAME).tar.gz
+	cd $(PACKDIR) ; tar rv --file $(DESTZIPDIR)/$(ZIPNAME).tar * ; cd $(BASEDIR)
+	gzip $(DESTZIPDIR)/$(ZIPNAME).tar
 else
-	cd $(PACKDIR) ; $(ZIPPROG) $(PACKAGEDIR)/$(ZIPNAME) * ; cd $(BASEDIR)
+	cd $(PACKDIR) ; $(ZIPPROG) $(DESTZIPDIR)/$(ZIPNAME) * ; cd $(BASEDIR)
 endif
 	$(DELTREE) $(PACKDIR)
 endif
@@ -832,12 +883,12 @@ ifndef ZIPNAME
 	@$(ECHO) Please specify ZIPNAME!
 	@exit
 else
-	$(DEL) $(PACKAGEDIR)/$(ZIPNAME)
+	$(DEL) $(DESTZIPDIR)/$(ZIPNAME)
 	$(MAKE) $(ZIPTARGET) PREFIXINSTALLDIR=$(PACKDIR)
 ifdef inlinux
-	cd $(PACKDIR) ; tar cvz --file $(PACKAGEDIR)/$(ZIPNAME).tar.gz * ; cd $(BASEDIR)
+	cd $(PACKDIR) ; tar cvz --file $(DESTZIPDIR)/$(ZIPNAME).tar.gz * ; cd $(BASEDIR)
 else
-	cd $(PACKDIR) ; $(ZIPPROG) $(PACKAGEDIR)/$(ZIPNAME) * ; cd $(BASEDIR)
+	cd $(PACKDIR) ; $(ZIPPROG) $(DESTZIPDIR)/$(ZIPNAME) * ; cd $(BASEDIR)
 endif
 	$(DELTREE) $(PACKDIR)
 endif
@@ -846,48 +897,42 @@ endif
 # Clean rules
 #####################################################################
 
-.PHONY: fpc_clean fpc_libsclean fpc_cleanall
+.PHONY: fpc_clean fpc_cleanall
 
-ifdef UNITOBJECTS
-override UNITCLEANFILES=$(wildcard $(UNITPPUFILES) $(UNITOFILES) $(UNITAFILES))
-endif
 ifdef EXTRACLEANUNITS
-override EXTRACLEANFILES+=$(wildcard $(addsuffix $(OEXT),$(EXTRACLEANUNITS)) $(addsuffix $(STATICLIBEXT),$(EXTRACLEANUNITS)) $(addsuffix $(PPUEXT),$(EXTRACLEANUNITS)))
+override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(EXTRACLEANUNITS))
 endif
 
-fpc_clean:
-ifdef EXEOBJECTS
-	-$(DEL) $(EXEFILES) $(EXEOFILES)
+ifdef CLEANPPUFILES
+ifdef PPUFILES
+CLEANPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES))
+else
+CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)))
+endif
 endif
-ifdef LOADEROBJECTS
-	-$(DEL) $(LOADEROFILES)
+
+fpc_clean: $(CLEANTARGET)
+ifdef CLEANEXEFILES
+	-$(DEL) $(CLEANEXEFILES)
 endif
-ifdef UNITCLEANFILES
-	-$(DEL) $(UNITCLEANFILES)
+ifdef CLEANPPUFILES
+	-$(DEL) $(CLEANPPUFILES)
+endif
+ifneq ($(CLEANPPULINKFILES),)
+	-$(DEL) $(CLEANPPULINKFILES)
 endif
 ifdef EXTRACLEANFILES
 	-$(DEL) $(EXTRACLEANFILES)
 endif
-	-$(DEL) $(PPAS) link.res log
-
-fpc_libsclean: clean
-	-$(DEL) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
-fpc_cleanall:
-ifdef EXEOBJECTS
-	-$(DEL) $(EXEFILES)
+fpc_cleanall: $(CLEANTARGET)
+ifdef CLEANEXEFILES
+	-$(DEL) $(CLEANEXEFILES)
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-
-#####################################################################
-# Depend rules
-#####################################################################
-
-.PHONY: fpc_depend
-
-fpc_depend:
-	$(PPDEP) $(UNITOBJECTS)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 #####################################################################
 # Info rules
@@ -896,7 +941,7 @@ fpc_depend:
 .PHONY: fpc_info fpc_cfginfo fpc_objectinfo fpc_toolsinfo fpc_installinfo \
 	fpc_dirinfo
 
-fpc_info: $(FPCINFO)
+fpc_info: $(INFOTARGET)
 
 fpc_infocfg:
 	@$(ECHO)
@@ -909,6 +954,20 @@ fpc_infocfg:
 	@$(ECHO)  Target.... $(OS_TARGET)
 	@$(ECHO)
 
+fpc_infoobjects:
+	@$(ECHO)
+	@$(ECHO)  == Object info ==
+	@$(ECHO)
+	@$(ECHO)  LoaderObjects..... $(LOADEROBJECTS)
+	@$(ECHO)  UnitObjects....... $(UNITOBJECTS)
+	@$(ECHO)  ExeObjects........ $(EXEOBJECTS)
+	@$(ECHO)
+	@$(ECHO)  ExtraCleanUnits... $(EXTRACLEANUNITS)
+	@$(ECHO)  ExtraCleanFiles... $(EXTRACLEANFILES)
+	@$(ECHO)
+	@$(ECHO)  ExtraInstallUnits. $(EXTRAINSTALLUNITS)
+	@$(ECHO)  ExtraInstallFiles. $(EXTRAINSTALLFILES)
+	@$(ECHO)
 
 fpc_infoinstall:
 	@$(ECHO)
@@ -921,21 +980,17 @@ endif
 	@$(ECHO)
 	@$(ECHO)  BaseInstallDir....... $(BASEINSTALLDIR)
 	@$(ECHO)  BinInstallDir........ $(BININSTALLDIR)
-	@$(ECHO)  UnitInstallDir....... $(UNITINSTALLDIR)
-	@$(ECHO)  StaticUnitInstallDir. $(STATIC_UNITINSTALLDIR)
-	@$(ECHO)  SharedUnitInstallDir. $(SHARED_UNITINSTALLDIR)
 	@$(ECHO)  LibInstallDir........ $(LIBINSTALLDIR)
-	@$(ECHO)  StaticLibInstallDir.. $(STATIC_LIBINSTALLDIR)
-	@$(ECHO)  SharedLibInstallDir.. $(SHARED_LIBINSTALLDIR)
-	@$(ECHO)  MsgInstallDir........ $(MSGINSTALLDIR)
+	@$(ECHO)  UnitInstallDir....... $(UNITINSTALLDIR)
+	@$(ECHO)  SourceInstallDir..... $(SOURCEINSTALLDIR)
 	@$(ECHO)  DocInstallDir........ $(DOCINSTALLDIR)
+	@$(ECHO)  ExtraInstallDir...... $(EXTRAINSTALLDIR)
 	@$(ECHO)
 
 #####################################################################
 # Users rules
 #####################################################################
 
-
 ifeq ($(OS_TARGET),win32)
 vpath %$(PASEXT) win32
 endif

+ 299 - 230
install/fpinst/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-11-10 23:52
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: all
@@ -65,12 +65,17 @@ endif
 
 # What compiler to use ?
 ifndef FPC
+# Compatibility with old makefiles
+ifdef PP
+export FPC=$(PP)
+else
 ifdef inOS2
 export FPC=ppos2$(EXEEXT)
 else
 export FPC=ppc386$(EXEEXT)
 endif
 endif
+endif
 
 # Target OS
 ifndef OS_TARGET
@@ -102,6 +107,10 @@ endif
 #####################################################################
 
 # Release ? Then force OPT and don't use extra opts via commandline
+ifndef REDIRFILE
+REDIRFILE=log
+endif
+
 ifdef RELEASE
 override OPT:=-Xs -OG2p3 -n
 endif
@@ -111,6 +120,15 @@ ifdef VERBOSE
 override OPT+=-vwni
 endif
 
+ifdef REDIR
+ifndef inlinux
+override FPC=redir -eo $(FPC)
+endif
+# set the verbosity to max
+override OPT+=-va
+override REDIR:= >> $(REDIRFILE)
+endif
+
 #####################################################################
 # User Settings
 #####################################################################
@@ -118,28 +136,29 @@ endif
 
 # Targets
 
-UNITOBJECTS=ziptypes unzip
+override UNITOBJECTS+=ziptypes unzip
 ifeq ($(OS_TARGET),linux)
-EXEOBJECTS+=installer
+override EXEOBJECTS+=installer
 endif
 ifeq ($(OS_TARGET),go32v2)
-EXEOBJECTS+=install
+override EXEOBJECTS+=install
 endif
 ifeq ($(OS_TARGET),win32)
-EXEOBJECTS+=install
+override EXEOBJECTS+=install
 endif
 ifeq ($(OS_TARGET),os2)
-EXEOBJECTS+=install
+override EXEOBJECTS+=install
 endif
 
 # Clean
 
 ifeq ($(OS_TARGET),linux)
-EXTRACLEANFILES+=install.o
+override EXTRACLEANFILES+=install.o
 endif
 
 # Install
 
+ZIPTARGET=install
 
 # Defaults
 
@@ -149,17 +168,26 @@ endif
 ifndef FPCDIR
 FPCDIR=../..
 endif
+ifndef PACKAGEDIR
+PACKAGEDIR=$(FPCDIR)/packages
+endif
+ifndef COMPONENTDIR
+COMPONENTDIR=$(FPCDIR)/components
+endif
 override NEEDUNITDIR=$(FPCDIR)/fv $(FPCDIR)/api
 ifndef TARGETDIR
 TARGETDIR=.
 endif
 
+# Packages
+
+
 # Libraries
 
 
 # Info
 
-FPCINFO=fpc_infocfg fpc_infoobjects fpc_infoinstall 
+INFOTARGET=fpc_infocfg fpc_infoobjects fpc_infoinstall 
 
 #####################################################################
 # Default Directories
@@ -172,6 +200,11 @@ else
 BASEDIR=.
 endif
 
+# this can be set to 'rtl' when the RTL units are installed
+ifndef UNITPREFIX
+UNITPREFIX=units
+endif
+
 # set the prefix directory where to install everything
 ifndef PREFIXINSTALLDIR
 ifdef inlinux
@@ -181,43 +214,18 @@ export PREFIXINSTALLDIR=/pp
 endif
 endif
 
-# set the directory to the rtl base
-ifndef RTLDIR
-ifdef RTL
-RTLDIR:=$(RTL)/$(OS_TARGET)
-else
-RTLDIR:=$(FPCDIR)/rtl/$(OS_TARGET)
-endif
-endif
-
-# specify where units are.
-ifndef UNITDIR
-ifdef UNITS
-UNITDIR=$(UNITS)/$(OS_TARGET)
-else
-UNITDIR=$(FPCDIR)/units/$(OS_TARGET)
-endif
-endif
-ifeq ($(strip $(wildcard $(UNITDIR)/*)),)
-UNITDIR=
-endif
-
-# On linux, try to find where libgcc.a is.
-ifdef inlinux
-ifndef GCCLIBDIR
-export GCCLIBDIR:=$(shell dirname `(gcc -v 2>&1)| head -n 1| awk '{ print $$4 } '`)
-endif
-endif
-
-# Where to find other libraries
-ifdef inlinux
-ifndef OTHERLIBDIR
-export OTHERLIBDIR:=$(shell grep -v "^\#" /etc/ld.so.conf | awk '{ ORS=" "; print $1 }')
+# create fcldir,rtldir,unitdir
+ifdef FPCDIR
+override FPCDIR:=$(subst \,/,$(FPCDIR))
+ifneq ($(FPCDIR),.)
+override RTLDIR=$(FPCDIR)/rtl/$(OS_TARGET)
+override FCLDIR=$(FPCDIR)/fcl/$(OS_TARGET)
+override UNITSDIR=$(FPCDIR)/units/$(OS_TARGET)
 endif
 endif
 
 #####################################################################
-# Install Directories based on BASEINSTALLDIR
+# Install Directories
 #####################################################################
 
 # set the base directory where to install everything
@@ -229,16 +237,6 @@ BASEINSTALLDIR=$(PREFIXINSTALLDIR)
 endif
 endif
 
-
-# Linux binary really goes to baseinstalldir
-ifndef LIBINSTALLDIR
-ifdef inlinux
-LIBINSTALLDIR=$(BASEINSTALLDIR)
-else
-LIBINSTALLDIR=$(BASEINSTALLDIR)/lib
-endif
-endif
-
 # set the directory where to install the binaries
 ifndef BININSTALLDIR
 ifdef inlinux
@@ -248,15 +246,28 @@ BININSTALLDIR=$(BASEINSTALLDIR)/bin/$(OS_TARGET)
 endif
 endif
 
-# Where the .msg files will be stored
-ifndef MSGINSTALLDIR
-MSGINSTALLDIR=$(BASEINSTALLDIR)/msg
+# set the directory where to install the units.
+ifndef UNITINSTALLDIR
+UNITINSTALLDIR=$(BASEINSTALLDIR)/$(UNITPREFIX)/$(OS_TARGET)
+endif
+
+# Where to install shared libraries
+ifndef LIBINSTALLDIR
+ifdef inlinux
+LIBINSTALLDIR=$(PREFIXINSTALLDIR)/lib
+else
+LIBINSTALLDIR=$(UNITINSTALLDIR)
+endif
 endif
 
-# Where the .msg files will be stored
+# Where the source files will be stored
 ifndef SOURCEINSTALLDIR
+ifdef inlinux
+SOURCEINSTALLDIR=$(PREFIXINSTALLDIR)/src/fpc-$(FPC_VERSION)
+else
 SOURCEINSTALLDIR=$(BASEINSTALLDIR)/source
 endif
+endif
 
 # Where the doc files will be stored
 ifndef DOCINSTALLDIR
@@ -267,42 +278,9 @@ DOCINSTALLDIR=$(BASEINSTALLDIR)/doc
 endif
 endif
 
-########################
-# Unit Directories
-########################
-
-# this can be set to 'rtl' when the RTL units are installed
-ifndef UNITPREFIX
-UNITPREFIX=units
-endif
-
-# set the directory where to install the units.
-ifndef UNITINSTALLDIR
-UNITINSTALLDIR=$(BASEINSTALLDIR)/$(UNITPREFIX)/$(OS_TARGET)
-endif
-
-# set the directory where to install the units.
-ifndef STATIC_UNITINSTALLDIR
-STATIC_UNITINSTALLDIR=$(UNITINSTALLDIR)/static
-endif
-
-# set the directory where to install the units.
-ifndef SHARED_UNITINSTALLDIR
-SHARED_UNITINSTALLDIR=$(UNITINSTALLDIR)/shared
-endif
-
-# set the directory where to install the libs (must exist)
-ifndef STATIC_LIBINSTALLDIR
-STATIC_LIBINSTALLDIR=$(STATIC_UNITINSTALLDIR)
-endif
-
-# set the directory where to install the libs (must exist)
-ifndef SHARED_LIBINSTALLDIR
-ifdef inlinux
-SHARED_LIBINSTALLDIR=$(PREFIXINSTALLDIR)/lib
-else
-SHARED_LIBINSTALLDIR=$(SHARED_UNITINSTALLDIR)
-endif
+# Where the some extra (data)files will be stored
+ifndef EXTRAINSTALLDIR
+EXTRAINSTALLDIR=$(BASEINSTALLDIR)
 endif
 
 
@@ -318,17 +296,12 @@ ifneq ($(OS_TARGET),$(OS_SOURCE))
 override FPCOPT+=-T$(OS_TARGET)
 endif
 
-
-ifdef NEEDOPT
-override FPCOPT+=$(NEEDOPT)
+ifdef RTLDIR
+override FPCOPT+=-Fu$(RTLDIR)
 endif
 
-# RTL first and then Unit dir (a unit can override RTLunit). Don't add the
-# dirs if fpcdir=. which can be used for the rtl makefiles
-ifdef FPCDIR
-ifneq ($(FPCDIR),.)
-override FPCOPT+=-Fu$(FPCDIR)/rtl/$(OS_TARGET) -Fu$(FPCDIR)/units/$(OS_TARGET)
-endif
+ifdef UNITSDIR
+override FPCOPT+=-Fu$(UNITSDIR)
 endif
 
 ifdef NEEDUNITDIR
@@ -341,8 +314,13 @@ override FPCOPT+=-FE$(TARGETDIR)
 endif
 
 # Smartlinking
-ifeq ($(SMARTLINK),YES)
-override FPCOPT+=-Cx
+ifdef SMARTLINK
+override FPCOPT+=-CX
+endif
+
+# Debug
+ifdef DEBUG
+override FPCOPT+=-g
 endif
 
 # Add commandline options
@@ -367,12 +345,25 @@ ifdef FPCOPTDEF
 override FPCOPT+=$(FPCOPTDEF)
 endif
 
+# Error file ?
+ifdef ERRORFILE
+override FPCOPT+=-Fr$(ERRORFILE)
+endif
+
 # Was a config file specified ?
 ifdef CFGFILE
 override FPCOPT+=@$(CFGFILE)
 endif
 
-override COMPILER=$(FPC) $(FPCOPT)
+# For win32 the options are passed using the environment variable FPCEXTCMD
+ifeq ($(OS_SOURCE),win32)
+override FPCEXTCMD:=$(FPCOPT)
+override FPCOPT:=!FPCEXTCMD
+export FPCEXTCMD
+endif
+
+# Compiler commandline
+override COMPILER:=$(FPC) $(FPCOPT)
 
 #####################################################################
 # Shell tools
@@ -383,6 +374,11 @@ ifndef COPY
 export COPY:=cp -fp
 endif
 
+# Copy a whole tree
+ifndef COPYTREE
+export COPYTREE:=cp -rfp
+endif
+
 # To move pograms
 ifndef MOVE
 export MOVE:=mv -f
@@ -439,16 +435,6 @@ ifndef LD
 LD=ld
 endif
 
-# Where is the ppumove program ?
-ifndef PPUMOVE
-PPUMOVE=ppumove
-endif
-
-# Where is the ppdep program ?
-ifndef PPDEP
-PPDEP=ppdep
-endif
-
 # ppas.bat / ppas.sh
 ifdef inlinux
 PPAS=ppas.sh
@@ -464,7 +450,7 @@ endif
 ifeq (,$(findstring -s ,$(COMPILER)))
 EXECPPAS=
 else
-EXECPPAS=@$(PPAS)
+EXECPPAS:=@$(PPAS)
 endif
 
 # ldconfig to rebuild .so cache
@@ -484,6 +470,36 @@ export ECHO:=$(firstword $(ECHO))
 endif
 endif
 
+# ppdep
+ifndef PPDEP
+PPDEP:=$(strip $(wildcard $(addsuffix /ppdep$(EXEEXT),$(SEARCHPATH))))
+ifeq ($(PPDEP),)
+PPDEP=
+else
+export PPDEP:=$(firstword $(PPDEP))
+endif
+endif
+
+# ppumove
+ifndef PPUMOVE
+PPUMOVE:=$(strip $(wildcard $(addsuffix /ppumove$(EXEEXT),$(SEARCHPATH))))
+ifeq ($(PPUMOVE),)
+PPUMOVE=
+else
+export PPUMOVE:=$(firstword $(PPUMOVE))
+endif
+endif
+
+# ppufiles
+ifndef PPUFILES
+PPUFILES:=$(strip $(wildcard $(addsuffix /ppufiles$(EXEEXT),$(SEARCHPATH))))
+ifeq ($(PPUFILES),)
+PPUFILES=
+else
+export PPUFILES:=$(firstword $(PPUFILES))
+endif
+endif
+
 # Look if UPX is found for go32v2 and win32. We can't use $UPX becuase
 # upx uses that one itself (PFV)
 ifndef UPXPROG
@@ -554,6 +570,7 @@ SMARTEXT=.sl
 STATICLIBEXT=.a
 SHAREDLIBEXT=.so
 PACKAGESUFFIX=
+FPCMADE=fpcmade
 
 # Go32v1
 ifeq ($(OS_TARGET),go32v1)
@@ -564,16 +581,19 @@ SMARTEXT=.sl1
 STATICLIBEXT=.a1
 SHAREDLIBEXT=.so1
 PACKAGESUFFIX=v1
+FPCMADE=fpcmade.v1
 endif
 
 # Go32v2
 ifeq ($(OS_TARGET),go32v2)
 PACKAGESUFFIX=go32
+FPCMADE=fpcmade.dos
 endif
 
 # Linux
 ifeq ($(OS_TARGET),linux)
 PACKAGESUFFIX=linux
+FPCMADE=fpcmade.lnx
 endif
 
 # Win32
@@ -585,6 +605,7 @@ SMARTEXT=.slw
 STATICLIBEXT=.aw
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=win32
+FPCMADE=fpcmade.w32
 endif
 
 # OS/2
@@ -596,6 +617,7 @@ SMARTEXT=.so
 STATICLIBEXT=.ao2
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=os2
+FPCMADE=fpcmade.os2
 endif
 
 # library prefix
@@ -622,26 +644,22 @@ endif
 endif
 
 #####################################################################
-# Default rules
+# Standard rules
 #####################################################################
 
-.PHONY: defaultrule all staticlib sharedlib showinstall install \
-	staticinstall sharedinstall libinstall zipinstall zipinstalladd \
-	clean cleanall depend info
-
 all: fpc_all
 
-staticlib: fpc_staticlib
+debug: fpc_debug
 
-sharedlib: fpc_sharedlib
+smart: fpc_smart
 
-showinstall: fpc_showinstall
+shared: fpc_shared
 
-staticinstall: fpc_staticinstall
+showinstall: fpc_showinstall
 
-sharedinstall: fpc_sharedinstall
+install: fpc_install
 
-libinstall: fpc_libinstall
+sourceinstall: fpc_sourceinstall
 
 zipinstall: fpc_zipinstall
 
@@ -649,41 +667,75 @@ zipinstalladd: fpc_zipinstalladd
 
 clean: fpc_clean
 
-clean_all: fpc_clean_all
-
-depend: fpc_depend
+cleanall: fpc_cleanall
 
 info: fpc_info
 
+.PHONY:  all debug smart shared showinstall install sourceinstall zipinstall zipinstalladd clean cleanall info
+
 #####################################################################
-# General compile rules
+# Package depends
 #####################################################################
 
-.PHONY: fpc_all fpc_units fpc_exes fpc_loaders
+ifneq ($(wildcard $(RTLDIR)),)
+ifeq ($(wildcard $(RTLDIR)/$(FPCMADE)),)
+override COMPILEPACKAGES+=rtl
+rtl_package:
+	$(MAKE) -C $(RTLDIR) all
+endif
+endif
+
+.PHONY:  rtl_package
 
-# Create Filenames
-LOADEROFILES=$(addsuffix $(OEXT),$(LOADEROBJECTS))
-EXEFILES=$(addsuffix $(EXEEXT),$(EXEOBJECTS))
-EXEOFILES=$(addsuffix $(OEXT),$(EXEOBJECTS))
-UNITPPUFILES=$(addsuffix $(PPUEXT),$(UNITOBJECTS))
-UNITOFILES=$(addsuffix $(OEXT),$(UNITOBJECTS))
-UNITAFILES=$(addsuffix $(STATICLIBEXT),$(UNITOBJECTS))
+#####################################################################
+# Units
+#####################################################################
 
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+.PHONY: fpc_units
 
-ifdef DEFAULTUNITS
-fpc_all: fpc_loaders fpc_units
-else
-fpc_all: fpc_loaders fpc_units fpc_exes
-endif
+override ALLTARGET+=fpc_units
 
-fpc_loaders: $(LOADEROFILES)
+override UNITPPUFILES=$(addsuffix $(PPUEXT),$(UNITOBJECTS))
+override INSTALLPPUFILES+=$(UNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES)
 
 fpc_units: $(UNITPPUFILES)
 
+#####################################################################
+# Exes
+#####################################################################
+
+.PHONY: fpc_exes
+
+override EXEFILES=$(addsuffix $(EXEEXT),$(EXEOBJECTS))
+override EXEOFILES=$(addsuffix $(OEXT),$(EXEOBJECTS))
+
+override ALLTARGET+=fpc_exes
+override INSTALLEXEFILES+=$(EXEFILES)
+override CLEANEXEFILES+=$(EXEFILES) $(EXEOFILES)
+
 fpc_exes: $(EXEFILES)
 
+#####################################################################
+# General compile rules
+#####################################################################
+
+.PHONY: fpc_all fpc_debug
+
+$(FPCMADE):
+	@$(ECHO) Compiled > $(FPCMADE)
+
+fpc_all: $(addsuffix _package,$(COMPILEPACKAGES)) \
+	 $(addsuffix _component,$(COMPILECOMPONENTS)) \
+	 $(ALLTARGET) $(FPCMADE)
+
+fpc_debug:
+	$(MAKE) all DEBUG=1
+
 # General compile rules, available for both possible PASEXT
+
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+
 %$(PPUEXT): %.pp
 	$(COMPILER) $< $(REDIR)
 	$(EXECPASS)
@@ -700,25 +752,21 @@ fpc_exes: $(EXEFILES)
 	$(COMPILER) $< $(REDIR)
 	$(EXECPASS)
 
-%$(OEXT): %$(LOADEREXT)
-	$(AS) -o $*$(OEXT) $<
-
 #####################################################################
 # Library
 #####################################################################
 
-.PHONY: fpc_staticlib fpc_sharedlib
+.PHONY: fpc_smart fpc_shared
 
 # Default sharedlib units are all unit objects
 ifndef SHAREDLIBUNITOBJECTS
-SHAREDLIBUNITOBJECTS=$(UNITOBJECTS)
+SHAREDLIBUNITOBJECTS:=$(UNITOBJECTS)
 endif
 
-fpc_staticlib:
-	$(MAKE) libsclean
-	$(MAKE) all SMARTLINK=YES
+fpc_smart:
+	$(MAKE) all SMARTLINK=1
 
-fpc_sharedlib: all
+fpc_shared: all
 ifdef inlinux
 ifndef LIBNAME
 	@$(ECHO) LIBNAME not set
@@ -733,56 +781,78 @@ endif
 # Install rules
 #####################################################################
 
-.PHONY: fpc_showinstallfiles fpc_install
+.PHONY: fpc_showinstall fpc_install
 
-ifdef UNITOBJECTS
-override UNITINSTALLFILES=$(wildcard $(UNITPPUFILES) $(UNITOFILES) $(UNITAFILES))
-endif
 ifdef EXTRAINSTALLUNITS
-override EXTRAINSTALLFILES+=$(wildcard $(addsuffix $(OEXT),$(EXTRAINSTALLUNITS)) $(addsuffix $(STATICLIBEXT),$(EXTRAINSTALLUNITS)) $(addsuffix $(PPUEXT),$(EXTRAINSTALLUNITS)))
+override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(EXTRAINSTALLUNITS))
 endif
 
-fpc_showinstallfiles : all
-ifndef DEFAULTUNITS
-ifdef EXEOBJECTS
-	@$(ECHO) $(addprefix "\n"$(BININSTALLDIR)/,$(EXEFILES))
+ifdef INSTALLPPUFILES
+ifdef PPUFILES
+ifdef inlinux
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
+INSTALLPPULIBFILES:=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
+else
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLPPUFILES))
 endif
+else
+INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
+endif
+endif
+
+fpc_showinstall: $(SHOWINSTALLTARGET)
+ifdef INSTALLEXEFILES
+	@$(ECHO) $(addprefix "\n"$(BININSTALLDIR)/,$(INSTALLEXEFILES))
+endif
+ifdef INSTALLPPUFILES
+	@$(ECHO) $(addprefix "\n"$(UNITINSTALLDIR)/,$(INSTALLPPUFILES))
+ifneq ($(INSTALLPPULINKFILES),)
+	@$(ECHO) $(addprefix "\n"$(UNITINSTALLDIR)/,$(INSTALLPPULINKFILES))
 endif
-ifdef LOADEROBJECTS
-	@$(ECHO) $(addprefix "\n"$(UNITINSTALLDIR)/,$(LOADEROFILES))
+ifneq ($(INSTALLPPULIBFILES),)
+	@$(ECHO) $(addprefix "\n"$(LIBINSTALLDIR)/,$(INSTALLPPULIBFILES))
 endif
-ifdef UNITINSTALLFILES
-	@$(ECHO) $(addprefix "\n"$(UNITINSTALLDIR)/,$(UNITINSTALLFILES))
 endif
 ifdef EXTRAINSTALLFILES
-	@$(ECHO) $(addprefix "\n"$(UNITINSTALLDIR)/,$(EXTRAINSTALLFILES))
+	@$(ECHO) $(addprefix "\n"$(EXTRAINSTALLDIR)/,$(EXTRAINSTALLFILES))
 endif
 
-fpc_install:
+fpc_install: $(INSTALLTARGET)
 # Create UnitInstallFiles
-ifndef DEFAULTUNITS
-ifdef EXEOBJECTS
+ifdef INSTALLEXEFILES
 	$(MKDIR) $(BININSTALLDIR)
 # Compress the exes if upx is defined
 ifdef UPXPROG
-	-$(UPXPROG) $(EXEFILES)
+	-$(UPXPROG) $(INSTALLEXEFILES)
 endif
-	$(INSTALLEXE) $(EXEFILES) $(BININSTALLDIR)
+	$(INSTALLEXE) $(INSTALLEXEFILES) $(BININSTALLDIR)
 endif
-endif
-ifdef LOADEROBJECTS
+ifdef INSTALLPPUFILES
 	$(MKDIR) $(UNITINSTALLDIR)
-	$(INSTALL) $(LOADEROFILES) $(UNITINSTALLDIR)
+	$(INSTALL) $(INSTALLPPUFILES) $(UNITINSTALLDIR)
+ifneq ($(INSTALLPPULINKFILES),)
+	$(INSTALL) $(INSTALLPPULINKFILES) $(UNITINSTALLDIR)
+endif
+ifneq ($(INSTALLPPULIBFILES),)
+	$(MKDIR) $(LIBINSTALLDIR)
+	$(INSTALL) $(INSTALLPPULIBFILES) $(LIBINSTALLDIR)
 endif
-ifdef UNITINSTALLFILES
-	$(MKDIR) $(UNITINSTALLDIR)
-	$(INSTALL) $(UNITINSTALLFILES) $(UNITINSTALLDIR)
 endif
 ifdef EXTRAINSTALLFILES
-	$(MKDIR) $(UNITINSTALLDIR)
-	$(INSTALL) $(EXTRAINSTALLFILES) $(UNITINSTALLDIR)
+	$(MKDIR) $(EXTRAINSTALLDIR)
+	$(INSTALL) $(EXTRAINSTALLFILES) $(EXTRAINSTALLDIR)
 endif
 
+#####################################################################
+# Source install rules
+#####################################################################
+
+.PHONY: fpc_sourceinstall
+
+fpc_sourceinstall: clean
+	$(MKDIR) $(SOURCEINSTALLDIR)
+	$(COPYTREE) $(BASEDIR) $(SOURCEINSTALLDIR)
+
 #####################################################################
 # Zip
 #####################################################################
@@ -799,8 +869,8 @@ endif
 endif
 
 # Test dir if none specified
-ifndef PACKAGEDIR
-PACKAGEDIR=$(BASEDIR)
+ifndef DESTZIPDIR
+DESTZIPDIR:=$(BASEDIR)
 endif
 
 # Add .zip/.tar.gz extension
@@ -810,11 +880,6 @@ override ZIPNAME:=$(ZIPNAME)$(ZIPEXT)
 endif
 endif
 
-# Default target which is call before zipping
-ifndef ZIPTARGET
-ZIPTARGET=install
-endif
-
 # Note: This will not remove the zipfile first
 fpc_zipinstalladd:
 ifndef ZIPNAME
@@ -823,11 +888,11 @@ ifndef ZIPNAME
 else
 	$(MAKE) $(ZIPTARGET) PREFIXINSTALLDIR=$(PACKDIR)
 ifdef inlinux
-	gzip -d $(PACKAGEDIR)/$(ZIPNAME).tar.gz
-	cd $(PACKDIR) ; tar rv --file $(PACKAGEDIR)/$(ZIPNAME).tar * ; cd $(BASEDIR)
-	gzip $(PACKAGEDIR)/$(ZIPNAME).tar
+	gzip -d $(DESTZIPDIR)/$(ZIPNAME).tar.gz
+	cd $(PACKDIR) ; tar rv --file $(DESTZIPDIR)/$(ZIPNAME).tar * ; cd $(BASEDIR)
+	gzip $(DESTZIPDIR)/$(ZIPNAME).tar
 else
-	cd $(PACKDIR) ; $(ZIPPROG) $(PACKAGEDIR)/$(ZIPNAME) * ; cd $(BASEDIR)
+	cd $(PACKDIR) ; $(ZIPPROG) $(DESTZIPDIR)/$(ZIPNAME) * ; cd $(BASEDIR)
 endif
 	$(DELTREE) $(PACKDIR)
 endif
@@ -838,12 +903,12 @@ ifndef ZIPNAME
 	@$(ECHO) Please specify ZIPNAME!
 	@exit
 else
-	$(DEL) $(PACKAGEDIR)/$(ZIPNAME)
+	$(DEL) $(DESTZIPDIR)/$(ZIPNAME)
 	$(MAKE) $(ZIPTARGET) PREFIXINSTALLDIR=$(PACKDIR)
 ifdef inlinux
-	cd $(PACKDIR) ; tar cvz --file $(PACKAGEDIR)/$(ZIPNAME).tar.gz * ; cd $(BASEDIR)
+	cd $(PACKDIR) ; tar cvz --file $(DESTZIPDIR)/$(ZIPNAME).tar.gz * ; cd $(BASEDIR)
 else
-	cd $(PACKDIR) ; $(ZIPPROG) $(PACKAGEDIR)/$(ZIPNAME) * ; cd $(BASEDIR)
+	cd $(PACKDIR) ; $(ZIPPROG) $(DESTZIPDIR)/$(ZIPNAME) * ; cd $(BASEDIR)
 endif
 	$(DELTREE) $(PACKDIR)
 endif
@@ -852,48 +917,42 @@ endif
 # Clean rules
 #####################################################################
 
-.PHONY: fpc_clean fpc_libsclean fpc_cleanall
+.PHONY: fpc_clean fpc_cleanall
 
-ifdef UNITOBJECTS
-override UNITCLEANFILES=$(wildcard $(UNITPPUFILES) $(UNITOFILES) $(UNITAFILES))
-endif
 ifdef EXTRACLEANUNITS
-override EXTRACLEANFILES+=$(wildcard $(addsuffix $(OEXT),$(EXTRACLEANUNITS)) $(addsuffix $(STATICLIBEXT),$(EXTRACLEANUNITS)) $(addsuffix $(PPUEXT),$(EXTRACLEANUNITS)))
+override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(EXTRACLEANUNITS))
 endif
 
-fpc_clean:
-ifdef EXEOBJECTS
-	-$(DEL) $(EXEFILES) $(EXEOFILES)
+ifdef CLEANPPUFILES
+ifdef PPUFILES
+CLEANPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES))
+else
+CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)))
+endif
 endif
-ifdef LOADEROBJECTS
-	-$(DEL) $(LOADEROFILES)
+
+fpc_clean: $(CLEANTARGET)
+ifdef CLEANEXEFILES
+	-$(DEL) $(CLEANEXEFILES)
+endif
+ifdef CLEANPPUFILES
+	-$(DEL) $(CLEANPPUFILES)
 endif
-ifdef UNITCLEANFILES
-	-$(DEL) $(UNITCLEANFILES)
+ifneq ($(CLEANPPULINKFILES),)
+	-$(DEL) $(CLEANPPULINKFILES)
 endif
 ifdef EXTRACLEANFILES
 	-$(DEL) $(EXTRACLEANFILES)
 endif
-	-$(DEL) $(PPAS) link.res log
-
-fpc_libsclean: clean
-	-$(DEL) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
-fpc_cleanall:
-ifdef EXEOBJECTS
-	-$(DEL) $(EXEFILES)
+fpc_cleanall: $(CLEANTARGET)
+ifdef CLEANEXEFILES
+	-$(DEL) $(CLEANEXEFILES)
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-
-#####################################################################
-# Depend rules
-#####################################################################
-
-.PHONY: fpc_depend
-
-fpc_depend:
-	$(PPDEP) $(UNITOBJECTS)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 #####################################################################
 # Info rules
@@ -902,7 +961,7 @@ fpc_depend:
 .PHONY: fpc_info fpc_cfginfo fpc_objectinfo fpc_toolsinfo fpc_installinfo \
 	fpc_dirinfo
 
-fpc_info: $(FPCINFO)
+fpc_info: $(INFOTARGET)
 
 fpc_infocfg:
 	@$(ECHO)
@@ -915,6 +974,20 @@ fpc_infocfg:
 	@$(ECHO)  Target.... $(OS_TARGET)
 	@$(ECHO)
 
+fpc_infoobjects:
+	@$(ECHO)
+	@$(ECHO)  == Object info ==
+	@$(ECHO)
+	@$(ECHO)  LoaderObjects..... $(LOADEROBJECTS)
+	@$(ECHO)  UnitObjects....... $(UNITOBJECTS)
+	@$(ECHO)  ExeObjects........ $(EXEOBJECTS)
+	@$(ECHO)
+	@$(ECHO)  ExtraCleanUnits... $(EXTRACLEANUNITS)
+	@$(ECHO)  ExtraCleanFiles... $(EXTRACLEANFILES)
+	@$(ECHO)
+	@$(ECHO)  ExtraInstallUnits. $(EXTRAINSTALLUNITS)
+	@$(ECHO)  ExtraInstallFiles. $(EXTRAINSTALLFILES)
+	@$(ECHO)
 
 fpc_infoinstall:
 	@$(ECHO)
@@ -927,21 +1000,17 @@ endif
 	@$(ECHO)
 	@$(ECHO)  BaseInstallDir....... $(BASEINSTALLDIR)
 	@$(ECHO)  BinInstallDir........ $(BININSTALLDIR)
-	@$(ECHO)  UnitInstallDir....... $(UNITINSTALLDIR)
-	@$(ECHO)  StaticUnitInstallDir. $(STATIC_UNITINSTALLDIR)
-	@$(ECHO)  SharedUnitInstallDir. $(SHARED_UNITINSTALLDIR)
 	@$(ECHO)  LibInstallDir........ $(LIBINSTALLDIR)
-	@$(ECHO)  StaticLibInstallDir.. $(STATIC_LIBINSTALLDIR)
-	@$(ECHO)  SharedLibInstallDir.. $(SHARED_LIBINSTALLDIR)
-	@$(ECHO)  MsgInstallDir........ $(MSGINSTALLDIR)
+	@$(ECHO)  UnitInstallDir....... $(UNITINSTALLDIR)
+	@$(ECHO)  SourceInstallDir..... $(SOURCEINSTALLDIR)
 	@$(ECHO)  DocInstallDir........ $(DOCINSTALLDIR)
+	@$(ECHO)  ExtraInstallDir...... $(EXTRAINSTALLDIR)
 	@$(ECHO)
 
 #####################################################################
 # Users rules
 #####################################################################
 
-
 ifdef inlinux
 installer: install.pas
 	$(COMPILER) -oinstaller install.pas

+ 2 - 2
packages/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-12-06 18:34
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: all
@@ -210,7 +210,7 @@ info: $(addsuffix _info,$(DIROBJECTS))
 #####################################################################
 
 ifneq ($(wildcard $(RTLDIR)),)
-ifeq ($(wildcard $(RTLDIR)/$(FPCMAKED)),)
+ifeq ($(wildcard $(RTLDIR)/$(FPCMADE)),)
 override COMPILEPACKAGES+=rtl
 rtl_package:
 	$(MAKE) -C $(RTLDIR) all

+ 37 - 22
packages/forms/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-11-25 23:47
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: all
@@ -65,12 +65,17 @@ endif
 
 # What compiler to use ?
 ifndef FPC
+# Compatibility with old makefiles
+ifdef PP
+export FPC=$(PP)
+else
 ifdef inOS2
 export FPC=ppos2$(EXEEXT)
 else
 export FPC=ppc386$(EXEEXT)
 endif
 endif
+endif
 
 # Target OS
 ifndef OS_TARGET
@@ -201,6 +206,7 @@ endif
 
 # create fcldir,rtldir,unitdir
 ifdef FPCDIR
+override FPCDIR:=$(subst \,/,$(FPCDIR))
 ifneq ($(FPCDIR),.)
 override RTLDIR=$(FPCDIR)/rtl/$(OS_TARGET)
 override FCLDIR=$(FPCDIR)/fcl/$(OS_TARGET)
@@ -330,7 +336,15 @@ ifdef CFGFILE
 override FPCOPT+=@$(CFGFILE)
 endif
 
-override COMPILER=$(FPC) $(FPCOPT)
+# For win32 the options are passed using the environment variable FPCEXTCMD
+ifeq ($(OS_SOURCE),win32)
+override FPCEXTCMD:=$(FPCOPT)
+override FPCOPT:=!FPCEXTCMD
+export FPCEXTCMD
+endif
+
+# Compiler commandline
+override COMPILER:=$(FPC) $(FPCOPT)
 
 #####################################################################
 # Shell tools
@@ -392,11 +406,6 @@ endif
 # Default Tools
 #####################################################################
 
-# file used to check if a package is compiled
-ifndef FPCMAKED
-FPCMAKED=fpcmaked
-endif
-
 # assembler, redefine it if cross compiling
 ifndef AS
 AS=as
@@ -422,7 +431,7 @@ endif
 ifeq (,$(findstring -s ,$(COMPILER)))
 EXECPPAS=
 else
-EXECPPAS=@$(PPAS)
+EXECPPAS:=@$(PPAS)
 endif
 
 # ldconfig to rebuild .so cache
@@ -542,6 +551,7 @@ SMARTEXT=.sl
 STATICLIBEXT=.a
 SHAREDLIBEXT=.so
 PACKAGESUFFIX=
+FPCMADE=fpcmade
 
 # Go32v1
 ifeq ($(OS_TARGET),go32v1)
@@ -552,16 +562,19 @@ SMARTEXT=.sl1
 STATICLIBEXT=.a1
 SHAREDLIBEXT=.so1
 PACKAGESUFFIX=v1
+FPCMADE=fpcmade.v1
 endif
 
 # Go32v2
 ifeq ($(OS_TARGET),go32v2)
 PACKAGESUFFIX=go32
+FPCMADE=fpcmade.dos
 endif
 
 # Linux
 ifeq ($(OS_TARGET),linux)
 PACKAGESUFFIX=linux
+FPCMADE=fpcmade.lnx
 endif
 
 # Win32
@@ -573,6 +586,7 @@ SMARTEXT=.slw
 STATICLIBEXT=.aw
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=win32
+FPCMADE=fpcmade.w32
 endif
 
 # OS/2
@@ -584,6 +598,7 @@ SMARTEXT=.so
 STATICLIBEXT=.ao2
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=os2
+FPCMADE=fpcmade.os2
 endif
 
 # library prefix
@@ -644,7 +659,7 @@ info: fpc_info
 #####################################################################
 
 ifneq ($(wildcard $(RTLDIR)),)
-ifeq ($(wildcard $(RTLDIR)/$(FPCMAKED)),)
+ifeq ($(wildcard $(RTLDIR)/$(FPCMADE)),)
 override COMPILEPACKAGES+=rtl
 rtl_package:
 	$(MAKE) -C $(RTLDIR) all
@@ -688,12 +703,12 @@ fpc_exes: $(EXEFILES)
 
 .PHONY: fpc_all fpc_debug
 
-$(FPCMAKED):
-	@$(ECHO) Compiled > $(FPCMAKED)
+$(FPCMADE):
+	@$(ECHO) Compiled > $(FPCMADE)
 
 fpc_all: $(addsuffix _package,$(COMPILEPACKAGES)) \
 	 $(addsuffix _component,$(COMPILECOMPONENTS)) \
-	 $(ALLTARGET) $(FPCMAKED)
+	 $(ALLTARGET) $(FPCMADE)
 
 fpc_debug:
 	$(MAKE) all DEBUG=1
@@ -726,7 +741,7 @@ fpc_debug:
 
 # Default sharedlib units are all unit objects
 ifndef SHAREDLIBUNITOBJECTS
-SHAREDLIBUNITOBJECTS=$(UNITOBJECTS)
+SHAREDLIBUNITOBJECTS:=$(UNITOBJECTS)
 endif
 
 fpc_smart:
@@ -756,13 +771,13 @@ endif
 ifdef INSTALLPPUFILES
 ifdef PPUFILES
 ifdef inlinux
-INSTALLPPULINKFILES=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
-INSTALLPPULIBFILES=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
+INSTALLPPULIBFILES:=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
 else
-INSTALLPPULINKFILES=$(shell $(PPUFILES) $(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLPPUFILES))
 endif
 else
-INSTALLPPULINKFILES=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 endif
 endif
 
@@ -836,7 +851,7 @@ endif
 
 # Test dir if none specified
 ifndef DESTZIPDIR
-DESTZIPDIR=$(BASEDIR)
+DESTZIPDIR:=$(BASEDIR)
 endif
 
 # Add .zip/.tar.gz extension
@@ -891,9 +906,9 @@ endif
 
 ifdef CLEANPPUFILES
 ifdef PPUFILES
-CLEANPPULINKFILES=$(shell $(PPUFILES) $(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES))
 else
-CLEANPPULINKFILES=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)))
 endif
 endif
 
@@ -910,7 +925,7 @@ endif
 ifdef EXTRACLEANFILES
 	-$(DEL) $(EXTRACLEANFILES)
 endif
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 fpc_cleanall: $(CLEANTARGET)
 ifdef CLEANEXEFILES
@@ -918,7 +933,7 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 #####################################################################
 # Info rules

+ 125 - 41
packages/forms/demo/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-11-24 22:54
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: all
@@ -65,12 +65,17 @@ endif
 
 # What compiler to use ?
 ifndef FPC
+# Compatibility with old makefiles
+ifdef PP
+export FPC=$(PP)
+else
 ifdef inOS2
 export FPC=ppos2$(EXEEXT)
 else
 export FPC=ppc386$(EXEEXT)
 endif
 endif
+endif
 
 # Target OS
 ifndef OS_TARGET
@@ -102,6 +107,10 @@ endif
 #####################################################################
 
 # Release ? Then force OPT and don't use extra opts via commandline
+ifndef REDIRFILE
+REDIRFILE=log
+endif
+
 ifdef RELEASE
 override OPT:=-Xs -OG2p3 -n
 endif
@@ -111,6 +120,15 @@ ifdef VERBOSE
 override OPT+=-vwni
 endif
 
+ifdef REDIR
+ifndef inlinux
+override FPC=redir -eo $(FPC)
+endif
+# set the verbosity to max
+override OPT+=-va
+override REDIR:= >> $(REDIRFILE)
+endif
+
 #####################################################################
 # User Settings
 #####################################################################
@@ -118,13 +136,14 @@ endif
 
 # Targets
 
-EXEOBJECTS+=pushme yesno pushbutton touchbutton minput inputall choice butttypes colsel colsel1 buttonall chartall positioner secretinput cursor fdial ldial ndial invslider sliderall borderwidth boxtype xyplotover arrowbutton browserop browserall chartstrip colbrowser counter fbrowse1 fbrowse flclock fonts goodies lalign ll longlabel menu objinactive objpos newbutton multilabel objreturn
+override EXEOBJECTS+=pushme yesno pushbutton touchbutton minput inputall choice butttypes colsel colsel1 buttonall chartall positioner secretinput cursor fdial ldial ndial invslider sliderall borderwidth boxtype xyplotover arrowbutton browserop browserall chartstrip colbrowser counter fbrowse1 fbrowse flclock fonts goodies lalign ll longlabel menu objinactive objpos newbutton multilabel objreturn
 
 # Clean
 
 
 # Install
 
+ZIPTARGET=install
 
 # Defaults
 
@@ -137,6 +156,9 @@ endif
 ifndef PACKAGEDIR
 PACKAGEDIR=$(FPCDIR)/packages
 endif
+ifndef COMPONENTDIR
+COMPONENTDIR=$(FPCDIR)/components
+endif
 override NEEDUNITDIR=..
 
 # Packages
@@ -148,7 +170,7 @@ override NEEDOTHERLIB=1
 
 # Info
 
-FPCINFO=fpc_infocfg fpc_infoobjects fpc_infoinstall 
+INFOTARGET=fpc_infocfg fpc_infoobjects fpc_infoinstall 
 
 #####################################################################
 # Default Directories
@@ -175,6 +197,16 @@ export PREFIXINSTALLDIR=/pp
 endif
 endif
 
+# create fcldir,rtldir,unitdir
+ifdef FPCDIR
+override FPCDIR:=$(subst \,/,$(FPCDIR))
+ifneq ($(FPCDIR),.)
+override RTLDIR=$(FPCDIR)/rtl/$(OS_TARGET)
+override FCLDIR=$(FPCDIR)/fcl/$(OS_TARGET)
+override UNITSDIR=$(FPCDIR)/units/$(OS_TARGET)
+endif
+endif
+
 # Where to find other libraries
 ifdef inlinux
 ifndef OTHERLIBDIR
@@ -254,12 +286,12 @@ ifneq ($(OS_TARGET),$(OS_SOURCE))
 override FPCOPT+=-T$(OS_TARGET)
 endif
 
-# RTL first and then Unit dir (a unit can override RTLunit). Don't add the
-# dirs if fpcdir=. which can be used for the rtl makefiles
-ifdef FPCDIR
-ifneq ($(FPCDIR),.)
-override FPCOPT+=-Fu$(FPCDIR)/rtl/$(OS_TARGET) -Fu$(FPCDIR)/units/$(OS_TARGET)
+ifdef RTLDIR
+override FPCOPT+=-Fu$(RTLDIR)
 endif
+
+ifdef UNITSDIR
+override FPCOPT+=-Fu$(UNITSDIR)
 endif
 
 ifdef NEEDUNITDIR
@@ -303,12 +335,25 @@ ifdef FPCOPTDEF
 override FPCOPT+=$(FPCOPTDEF)
 endif
 
+# Error file ?
+ifdef ERRORFILE
+override FPCOPT+=-Fr$(ERRORFILE)
+endif
+
 # Was a config file specified ?
 ifdef CFGFILE
 override FPCOPT+=@$(CFGFILE)
 endif
 
-override COMPILER=$(FPC) $(FPCOPT)
+# For win32 the options are passed using the environment variable FPCEXTCMD
+ifeq ($(OS_SOURCE),win32)
+override FPCEXTCMD:=$(FPCOPT)
+override FPCOPT:=!FPCEXTCMD
+export FPCEXTCMD
+endif
+
+# Compiler commandline
+override COMPILER:=$(FPC) $(FPCOPT)
 
 #####################################################################
 # Shell tools
@@ -319,6 +364,11 @@ ifndef COPY
 export COPY:=cp -fp
 endif
 
+# Copy a whole tree
+ifndef COPYTREE
+export COPYTREE:=cp -rfp
+endif
+
 # To move pograms
 ifndef MOVE
 export MOVE:=mv -f
@@ -390,7 +440,7 @@ endif
 ifeq (,$(findstring -s ,$(COMPILER)))
 EXECPPAS=
 else
-EXECPPAS=@$(PPAS)
+EXECPPAS:=@$(PPAS)
 endif
 
 # ldconfig to rebuild .so cache
@@ -510,6 +560,7 @@ SMARTEXT=.sl
 STATICLIBEXT=.a
 SHAREDLIBEXT=.so
 PACKAGESUFFIX=
+FPCMADE=fpcmade
 
 # Go32v1
 ifeq ($(OS_TARGET),go32v1)
@@ -520,16 +571,19 @@ SMARTEXT=.sl1
 STATICLIBEXT=.a1
 SHAREDLIBEXT=.so1
 PACKAGESUFFIX=v1
+FPCMADE=fpcmade.v1
 endif
 
 # Go32v2
 ifeq ($(OS_TARGET),go32v2)
 PACKAGESUFFIX=go32
+FPCMADE=fpcmade.dos
 endif
 
 # Linux
 ifeq ($(OS_TARGET),linux)
 PACKAGESUFFIX=linux
+FPCMADE=fpcmade.lnx
 endif
 
 # Win32
@@ -541,6 +595,7 @@ SMARTEXT=.slw
 STATICLIBEXT=.aw
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=win32
+FPCMADE=fpcmade.w32
 endif
 
 # OS/2
@@ -552,6 +607,7 @@ SMARTEXT=.so
 STATICLIBEXT=.ao2
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=os2
+FPCMADE=fpcmade.os2
 endif
 
 # library prefix
@@ -578,13 +634,9 @@ endif
 endif
 
 #####################################################################
-# Default rules
+# Standard rules
 #####################################################################
 
-.PHONY: defaultrule all debug examples test smart shared \
-	showinstall install zipinstall zipinstalladd \
-	clean cleanall depend info
-
 all: fpc_all
 
 debug: fpc_debug
@@ -597,6 +649,8 @@ showinstall: fpc_showinstall
 
 install: fpc_install
 
+sourceinstall: fpc_sourceinstall
+
 zipinstall: fpc_zipinstall
 
 zipinstalladd: fpc_zipinstalladd
@@ -607,14 +661,30 @@ cleanall: fpc_cleanall
 
 info: fpc_info
 
+.PHONY:  all debug smart shared showinstall install sourceinstall zipinstall zipinstalladd clean cleanall info
+
+#####################################################################
+# Package depends
+#####################################################################
+
+ifneq ($(wildcard $(RTLDIR)),)
+ifeq ($(wildcard $(RTLDIR)/$(FPCMADE)),)
+override COMPILEPACKAGES+=rtl
+rtl_package:
+	$(MAKE) -C $(RTLDIR) all
+endif
+endif
+
+.PHONY:  rtl_package
+
 #####################################################################
 # Exes
 #####################################################################
 
 .PHONY: fpc_exes
 
-EXEFILES=$(addsuffix $(EXEEXT),$(EXEOBJECTS))
-EXEOFILES=$(addsuffix $(OEXT),$(EXEOBJECTS))
+override EXEFILES=$(addsuffix $(EXEEXT),$(EXEOBJECTS))
+override EXEOFILES=$(addsuffix $(OEXT),$(EXEOBJECTS))
 
 override ALLTARGET+=fpc_exes
 override INSTALLEXEFILES+=$(EXEFILES)
@@ -628,7 +698,12 @@ fpc_exes: $(EXEFILES)
 
 .PHONY: fpc_all fpc_debug
 
-fpc_all: $(ALLTARGET)
+$(FPCMADE):
+	@$(ECHO) Compiled > $(FPCMADE)
+
+fpc_all: $(addsuffix _package,$(COMPILEPACKAGES)) \
+	 $(addsuffix _component,$(COMPILECOMPONENTS)) \
+	 $(ALLTARGET) $(FPCMADE)
 
 fpc_debug:
 	$(MAKE) all DEBUG=1
@@ -661,7 +736,7 @@ fpc_debug:
 
 # Default sharedlib units are all unit objects
 ifndef SHAREDLIBUNITOBJECTS
-SHAREDLIBUNITOBJECTS=$(UNITOBJECTS)
+SHAREDLIBUNITOBJECTS:=$(UNITOBJECTS)
 endif
 
 fpc_smart:
@@ -691,11 +766,13 @@ endif
 ifdef INSTALLPPUFILES
 ifdef PPUFILES
 ifdef inlinux
-INSTALLPPULINKFILES=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
-INSTALLPPULIBFILES=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
+INSTALLPPULIBFILES:=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
 else
-INSTALLPPULINKFILES=$(shell $(PPUFILES) $(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLPPUFILES))
 endif
+else
+INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 endif
 endif
 
@@ -742,6 +819,16 @@ ifdef EXTRAINSTALLFILES
 	$(INSTALL) $(EXTRAINSTALLFILES) $(EXTRAINSTALLDIR)
 endif
 
+#####################################################################
+# Source install rules
+#####################################################################
+
+.PHONY: fpc_sourceinstall
+
+fpc_sourceinstall: clean
+	$(MKDIR) $(SOURCEINSTALLDIR)
+	$(COPYTREE) $(BASEDIR) $(SOURCEINSTALLDIR)
+
 #####################################################################
 # Zip
 #####################################################################
@@ -758,8 +845,8 @@ endif
 endif
 
 # Test dir if none specified
-ifndef PACKAGEDIR
-PACKAGEDIR=$(BASEDIR)
+ifndef DESTZIPDIR
+DESTZIPDIR:=$(BASEDIR)
 endif
 
 # Add .zip/.tar.gz extension
@@ -769,11 +856,6 @@ override ZIPNAME:=$(ZIPNAME)$(ZIPEXT)
 endif
 endif
 
-# Default target which is call before zipping
-ifndef ZIPTARGET
-ZIPTARGET=install
-endif
-
 # Note: This will not remove the zipfile first
 fpc_zipinstalladd:
 ifndef ZIPNAME
@@ -782,11 +864,11 @@ ifndef ZIPNAME
 else
 	$(MAKE) $(ZIPTARGET) PREFIXINSTALLDIR=$(PACKDIR)
 ifdef inlinux
-	gzip -d $(PACKAGEDIR)/$(ZIPNAME).tar.gz
-	cd $(PACKDIR) ; tar rv --file $(PACKAGEDIR)/$(ZIPNAME).tar * ; cd $(BASEDIR)
-	gzip $(PACKAGEDIR)/$(ZIPNAME).tar
+	gzip -d $(DESTZIPDIR)/$(ZIPNAME).tar.gz
+	cd $(PACKDIR) ; tar rv --file $(DESTZIPDIR)/$(ZIPNAME).tar * ; cd $(BASEDIR)
+	gzip $(DESTZIPDIR)/$(ZIPNAME).tar
 else
-	cd $(PACKDIR) ; $(ZIPPROG) $(PACKAGEDIR)/$(ZIPNAME) * ; cd $(BASEDIR)
+	cd $(PACKDIR) ; $(ZIPPROG) $(DESTZIPDIR)/$(ZIPNAME) * ; cd $(BASEDIR)
 endif
 	$(DELTREE) $(PACKDIR)
 endif
@@ -797,12 +879,12 @@ ifndef ZIPNAME
 	@$(ECHO) Please specify ZIPNAME!
 	@exit
 else
-	$(DEL) $(PACKAGEDIR)/$(ZIPNAME)
+	$(DEL) $(DESTZIPDIR)/$(ZIPNAME)
 	$(MAKE) $(ZIPTARGET) PREFIXINSTALLDIR=$(PACKDIR)
 ifdef inlinux
-	cd $(PACKDIR) ; tar cvz --file $(PACKAGEDIR)/$(ZIPNAME).tar.gz * ; cd $(BASEDIR)
+	cd $(PACKDIR) ; tar cvz --file $(DESTZIPDIR)/$(ZIPNAME).tar.gz * ; cd $(BASEDIR)
 else
-	cd $(PACKDIR) ; $(ZIPPROG) $(PACKAGEDIR)/$(ZIPNAME) * ; cd $(BASEDIR)
+	cd $(PACKDIR) ; $(ZIPPROG) $(DESTZIPDIR)/$(ZIPNAME) * ; cd $(BASEDIR)
 endif
 	$(DELTREE) $(PACKDIR)
 endif
@@ -819,7 +901,9 @@ endif
 
 ifdef CLEANPPUFILES
 ifdef PPUFILES
-CLEANPPULINKFILES=$(shell $(PPUFILES) $(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES))
+else
+CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)))
 endif
 endif
 
@@ -836,15 +920,15 @@ endif
 ifdef EXTRACLEANFILES
 	-$(DEL) $(EXTRACLEANFILES)
 endif
-	-$(DEL) $(PPAS) link.res log
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
-fpc_cleanall:
+fpc_cleanall: $(CLEANTARGET)
 ifdef CLEANEXEFILES
 	-$(DEL) $(CLEANEXEFILES)
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(PPAS) link.res log
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 #####################################################################
 # Info rules
@@ -853,7 +937,7 @@ endif
 .PHONY: fpc_info fpc_cfginfo fpc_objectinfo fpc_toolsinfo fpc_installinfo \
 	fpc_dirinfo
 
-fpc_info: $(FPCINFO)
+fpc_info: $(INFOTARGET)
 
 fpc_infocfg:
 	@$(ECHO)

+ 15 - 14
packages/gdbint/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-12-06 18:34
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: all
@@ -430,11 +430,6 @@ endif
 # Default Tools
 #####################################################################
 
-# file used to check if a package is compiled
-ifndef FPCMAKED
-FPCMAKED=fpcmaked
-endif
-
 # assembler, redefine it if cross compiling
 ifndef AS
 AS=as
@@ -580,6 +575,7 @@ SMARTEXT=.sl
 STATICLIBEXT=.a
 SHAREDLIBEXT=.so
 PACKAGESUFFIX=
+FPCMADE=fpcmade
 
 # Go32v1
 ifeq ($(OS_TARGET),go32v1)
@@ -590,16 +586,19 @@ SMARTEXT=.sl1
 STATICLIBEXT=.a1
 SHAREDLIBEXT=.so1
 PACKAGESUFFIX=v1
+FPCMADE=fpcmade.v1
 endif
 
 # Go32v2
 ifeq ($(OS_TARGET),go32v2)
 PACKAGESUFFIX=go32
+FPCMADE=fpcmade.dos
 endif
 
 # Linux
 ifeq ($(OS_TARGET),linux)
 PACKAGESUFFIX=linux
+FPCMADE=fpcmade.lnx
 endif
 
 # Win32
@@ -611,6 +610,7 @@ SMARTEXT=.slw
 STATICLIBEXT=.aw
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=win32
+FPCMADE=fpcmade.w32
 endif
 
 # OS/2
@@ -622,6 +622,7 @@ SMARTEXT=.so
 STATICLIBEXT=.ao2
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=os2
+FPCMADE=fpcmade.os2
 endif
 
 # library prefix
@@ -684,7 +685,7 @@ info: fpc_info
 #####################################################################
 
 ifneq ($(wildcard $(RTLDIR)),)
-ifeq ($(wildcard $(RTLDIR)/$(FPCMAKED)),)
+ifeq ($(wildcard $(RTLDIR)/$(FPCMADE)),)
 override COMPILEPACKAGES+=rtl
 rtl_package:
 	$(MAKE) -C $(RTLDIR) all
@@ -743,12 +744,12 @@ fpc_test: examples
 
 .PHONY: fpc_all fpc_debug
 
-$(FPCMAKED):
-	@$(ECHO) Compiled > $(FPCMAKED)
+$(FPCMADE):
+	@$(ECHO) Compiled > $(FPCMADE)
 
 fpc_all: $(addsuffix _package,$(COMPILEPACKAGES)) \
 	 $(addsuffix _component,$(COMPILECOMPONENTS)) \
-	 $(ALLTARGET) $(FPCMAKED)
+	 $(ALLTARGET) $(FPCMADE)
 
 fpc_debug:
 	$(MAKE) all DEBUG=1
@@ -817,7 +818,7 @@ else
 INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLPPUFILES))
 endif
 else
-INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 endif
 endif
 
@@ -948,7 +949,7 @@ ifdef CLEANPPUFILES
 ifdef PPUFILES
 CLEANPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES))
 else
-CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)))
 endif
 endif
 
@@ -965,7 +966,7 @@ endif
 ifdef EXTRACLEANFILES
 	-$(DEL) $(EXTRACLEANFILES)
 endif
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 fpc_cleanall: $(CLEANTARGET)
 ifdef CLEANEXEFILES
@@ -973,7 +974,7 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 #####################################################################
 # Info rules

+ 41 - 30
packages/gdbint/libgdb/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-11-10 23:51
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: all
@@ -65,12 +65,17 @@ endif
 
 # What compiler to use ?
 ifndef FPC
+# Compatibility with old makefiles
+ifdef PP
+export FPC=$(PP)
+else
 ifdef inOS2
 export FPC=ppos2$(EXEEXT)
 else
 export FPC=ppc386$(EXEEXT)
 endif
 endif
+endif
 
 # Target OS
 ifndef OS_TARGET
@@ -102,6 +107,10 @@ endif
 #####################################################################
 
 # Release ? Then force OPT and don't use extra opts via commandline
+ifndef REDIRFILE
+REDIRFILE=log
+endif
+
 ifdef RELEASE
 override OPT:=-Xs -OG2p3 -n
 endif
@@ -111,6 +120,15 @@ ifdef VERBOSE
 override OPT+=-vwni
 endif
 
+ifdef REDIR
+ifndef inlinux
+override FPC=redir -eo $(FPC)
+endif
+# set the verbosity to max
+override OPT+=-va
+override REDIR:= >> $(REDIRFILE)
+endif
+
 #####################################################################
 # User Settings
 #####################################################################
@@ -124,54 +142,47 @@ endif
 
 # Install
 
+ZIPTARGET=install
 
 # Defaults
 
 
 # Directories
 
+ifndef PACKAGEDIR
+PACKAGEDIR=$(FPCDIR)/packages
+endif
+ifndef COMPONENTDIR
+COMPONENTDIR=$(FPCDIR)/components
+endif
+
+# Packages
+
 
 # Libraries
 
 
 #####################################################################
-# Default rules
+# Standard rules
 #####################################################################
 
-.PHONY: defaultrule all staticlib sharedlib showinstall install \
-	staticinstall sharedinstall libinstall zipinstall zipinstalladd \
-	clean cleanall depend info
-
-staticlib: fpc_staticlib
-
-sharedlib: fpc_sharedlib
-
-showinstall: fpc_showinstall
-
-install: fpc_install
-
-staticinstall: fpc_staticinstall
-
-sharedinstall: fpc_sharedinstall
-
-libinstall: fpc_libinstall
-
-zipinstall: fpc_zipinstall
-
-zipinstalladd: fpc_zipinstalladd
-
-clean: fpc_clean
-
-clean_all: fpc_clean_all
+#####################################################################
+# Package depends
+#####################################################################
 
-depend: fpc_depend
+ifneq ($(wildcard $(RTLDIR)),)
+ifeq ($(wildcard $(RTLDIR)/$(FPCMADE)),)
+override COMPILEPACKAGES+=rtl
+rtl_package:
+	$(MAKE) -C $(RTLDIR) all
+endif
+endif
 
-info: fpc_info
+.PHONY:  rtl_package
 
 #####################################################################
 # Users rules
 #####################################################################
 
-
 all:
 	$(MAKE) -C $(OS_TARGET) all

+ 39 - 24
packages/ggi/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-11-25 23:46
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: all
@@ -65,12 +65,17 @@ endif
 
 # What compiler to use ?
 ifndef FPC
+# Compatibility with old makefiles
+ifdef PP
+export FPC=$(PP)
+else
 ifdef inOS2
 export FPC=ppos2$(EXEEXT)
 else
 export FPC=ppc386$(EXEEXT)
 endif
 endif
+endif
 
 # Target OS
 ifndef OS_TARGET
@@ -193,6 +198,7 @@ endif
 
 # create fcldir,rtldir,unitdir
 ifdef FPCDIR
+override FPCDIR:=$(subst \,/,$(FPCDIR))
 ifneq ($(FPCDIR),.)
 override RTLDIR=$(FPCDIR)/rtl/$(OS_TARGET)
 override FCLDIR=$(FPCDIR)/fcl/$(OS_TARGET)
@@ -322,7 +328,15 @@ ifdef CFGFILE
 override FPCOPT+=@$(CFGFILE)
 endif
 
-override COMPILER=$(FPC) $(FPCOPT)
+# For win32 the options are passed using the environment variable FPCEXTCMD
+ifeq ($(OS_SOURCE),win32)
+override FPCEXTCMD:=$(FPCOPT)
+override FPCOPT:=!FPCEXTCMD
+export FPCEXTCMD
+endif
+
+# Compiler commandline
+override COMPILER:=$(FPC) $(FPCOPT)
 
 #####################################################################
 # Shell tools
@@ -384,11 +398,6 @@ endif
 # Default Tools
 #####################################################################
 
-# file used to check if a package is compiled
-ifndef FPCMAKED
-FPCMAKED=fpcmaked
-endif
-
 # assembler, redefine it if cross compiling
 ifndef AS
 AS=as
@@ -414,7 +423,7 @@ endif
 ifeq (,$(findstring -s ,$(COMPILER)))
 EXECPPAS=
 else
-EXECPPAS=@$(PPAS)
+EXECPPAS:=@$(PPAS)
 endif
 
 # ldconfig to rebuild .so cache
@@ -534,6 +543,7 @@ SMARTEXT=.sl
 STATICLIBEXT=.a
 SHAREDLIBEXT=.so
 PACKAGESUFFIX=
+FPCMADE=fpcmade
 
 # Go32v1
 ifeq ($(OS_TARGET),go32v1)
@@ -544,16 +554,19 @@ SMARTEXT=.sl1
 STATICLIBEXT=.a1
 SHAREDLIBEXT=.so1
 PACKAGESUFFIX=v1
+FPCMADE=fpcmade.v1
 endif
 
 # Go32v2
 ifeq ($(OS_TARGET),go32v2)
 PACKAGESUFFIX=go32
+FPCMADE=fpcmade.dos
 endif
 
 # Linux
 ifeq ($(OS_TARGET),linux)
 PACKAGESUFFIX=linux
+FPCMADE=fpcmade.lnx
 endif
 
 # Win32
@@ -565,6 +578,7 @@ SMARTEXT=.slw
 STATICLIBEXT=.aw
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=win32
+FPCMADE=fpcmade.w32
 endif
 
 # OS/2
@@ -576,6 +590,7 @@ SMARTEXT=.so
 STATICLIBEXT=.ao2
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=os2
+FPCMADE=fpcmade.os2
 endif
 
 # library prefix
@@ -640,7 +655,7 @@ info: fpc_info
 #####################################################################
 
 ifneq ($(wildcard $(RTLDIR)),)
-ifeq ($(wildcard $(RTLDIR)/$(FPCMAKED)),)
+ifeq ($(wildcard $(RTLDIR)/$(FPCMADE)),)
 override COMPILEPACKAGES+=rtl
 rtl_package:
 	$(MAKE) -C $(RTLDIR) all
@@ -669,8 +684,8 @@ fpc_units: $(UNITPPUFILES)
 
 .PHONY: fpc_examples fpc_test
 
-override EXAMPLEFILES=$(addsuffix $(EXEEXT),$(EXAMPLEOBJECTS))
-override EXAMPLEOFILES=$(addsuffix $(OEXT),$(EXAMPLEOBJECTS))
+override EXAMPLEFILES:=$(addsuffix $(EXEEXT),$(EXAMPLEOBJECTS))
+override EXAMPLEOFILES:=$(addsuffix $(OEXT),$(EXAMPLEOBJECTS))
 
 override CLEANEXEFILES+=$(EXAMPLEFILES) $(EXAMPLEOFILES)
 
@@ -684,12 +699,12 @@ fpc_test: examples
 
 .PHONY: fpc_all fpc_debug
 
-$(FPCMAKED):
-	@$(ECHO) Compiled > $(FPCMAKED)
+$(FPCMADE):
+	@$(ECHO) Compiled > $(FPCMADE)
 
 fpc_all: $(addsuffix _package,$(COMPILEPACKAGES)) \
 	 $(addsuffix _component,$(COMPILECOMPONENTS)) \
-	 $(ALLTARGET) $(FPCMAKED)
+	 $(ALLTARGET) $(FPCMADE)
 
 fpc_debug:
 	$(MAKE) all DEBUG=1
@@ -722,7 +737,7 @@ fpc_debug:
 
 # Default sharedlib units are all unit objects
 ifndef SHAREDLIBUNITOBJECTS
-SHAREDLIBUNITOBJECTS=$(UNITOBJECTS)
+SHAREDLIBUNITOBJECTS:=$(UNITOBJECTS)
 endif
 
 fpc_smart:
@@ -752,13 +767,13 @@ endif
 ifdef INSTALLPPUFILES
 ifdef PPUFILES
 ifdef inlinux
-INSTALLPPULINKFILES=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
-INSTALLPPULIBFILES=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
+INSTALLPPULIBFILES:=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
 else
-INSTALLPPULINKFILES=$(shell $(PPUFILES) $(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLPPUFILES))
 endif
 else
-INSTALLPPULINKFILES=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 endif
 endif
 
@@ -832,7 +847,7 @@ endif
 
 # Test dir if none specified
 ifndef DESTZIPDIR
-DESTZIPDIR=$(BASEDIR)
+DESTZIPDIR:=$(BASEDIR)
 endif
 
 # Add .zip/.tar.gz extension
@@ -887,9 +902,9 @@ endif
 
 ifdef CLEANPPUFILES
 ifdef PPUFILES
-CLEANPPULINKFILES=$(shell $(PPUFILES) $(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES))
 else
-CLEANPPULINKFILES=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)))
 endif
 endif
 
@@ -906,7 +921,7 @@ endif
 ifdef EXTRACLEANFILES
 	-$(DEL) $(EXTRACLEANFILES)
 endif
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 fpc_cleanall: $(CLEANTARGET)
 ifdef CLEANEXEFILES
@@ -914,7 +929,7 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 #####################################################################
 # Info rules

+ 15 - 14
packages/gtk/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-12-06 18:34
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: all
@@ -407,11 +407,6 @@ endif
 # Default Tools
 #####################################################################
 
-# file used to check if a package is compiled
-ifndef FPCMAKED
-FPCMAKED=fpcmaked
-endif
-
 # assembler, redefine it if cross compiling
 ifndef AS
 AS=as
@@ -557,6 +552,7 @@ SMARTEXT=.sl
 STATICLIBEXT=.a
 SHAREDLIBEXT=.so
 PACKAGESUFFIX=
+FPCMADE=fpcmade
 
 # Go32v1
 ifeq ($(OS_TARGET),go32v1)
@@ -567,16 +563,19 @@ SMARTEXT=.sl1
 STATICLIBEXT=.a1
 SHAREDLIBEXT=.so1
 PACKAGESUFFIX=v1
+FPCMADE=fpcmade.v1
 endif
 
 # Go32v2
 ifeq ($(OS_TARGET),go32v2)
 PACKAGESUFFIX=go32
+FPCMADE=fpcmade.dos
 endif
 
 # Linux
 ifeq ($(OS_TARGET),linux)
 PACKAGESUFFIX=linux
+FPCMADE=fpcmade.lnx
 endif
 
 # Win32
@@ -588,6 +587,7 @@ SMARTEXT=.slw
 STATICLIBEXT=.aw
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=win32
+FPCMADE=fpcmade.w32
 endif
 
 # OS/2
@@ -599,6 +599,7 @@ SMARTEXT=.so
 STATICLIBEXT=.ao2
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=os2
+FPCMADE=fpcmade.os2
 endif
 
 # library prefix
@@ -657,7 +658,7 @@ info: fpc_info
 #####################################################################
 
 ifneq ($(wildcard $(RTLDIR)),)
-ifeq ($(wildcard $(RTLDIR)/$(FPCMAKED)),)
+ifeq ($(wildcard $(RTLDIR)/$(FPCMADE)),)
 override COMPILEPACKAGES+=rtl
 rtl_package:
 	$(MAKE) -C $(RTLDIR) all
@@ -686,12 +687,12 @@ fpc_units: $(UNITPPUFILES)
 
 .PHONY: fpc_all fpc_debug
 
-$(FPCMAKED):
-	@$(ECHO) Compiled > $(FPCMAKED)
+$(FPCMADE):
+	@$(ECHO) Compiled > $(FPCMADE)
 
 fpc_all: $(addsuffix _package,$(COMPILEPACKAGES)) \
 	 $(addsuffix _component,$(COMPILECOMPONENTS)) \
-	 $(ALLTARGET) $(FPCMAKED)
+	 $(ALLTARGET) $(FPCMADE)
 
 fpc_debug:
 	$(MAKE) all DEBUG=1
@@ -760,7 +761,7 @@ else
 INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLPPUFILES))
 endif
 else
-INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 endif
 endif
 
@@ -891,7 +892,7 @@ ifdef CLEANPPUFILES
 ifdef PPUFILES
 CLEANPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES))
 else
-CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)))
 endif
 endif
 
@@ -908,7 +909,7 @@ endif
 ifdef EXTRACLEANFILES
 	-$(DEL) $(EXTRACLEANFILES)
 endif
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 fpc_cleanall: $(CLEANTARGET)
 ifdef CLEANEXEFILES
@@ -916,7 +917,7 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 #####################################################################
 # Info rules

+ 15 - 14
packages/gtk/examples/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-12-06 18:34
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: all
@@ -437,11 +437,6 @@ endif
 # Default Tools
 #####################################################################
 
-# file used to check if a package is compiled
-ifndef FPCMAKED
-FPCMAKED=fpcmaked
-endif
-
 # assembler, redefine it if cross compiling
 ifndef AS
 AS=as
@@ -587,6 +582,7 @@ SMARTEXT=.sl
 STATICLIBEXT=.a
 SHAREDLIBEXT=.so
 PACKAGESUFFIX=
+FPCMADE=fpcmade
 
 # Go32v1
 ifeq ($(OS_TARGET),go32v1)
@@ -597,16 +593,19 @@ SMARTEXT=.sl1
 STATICLIBEXT=.a1
 SHAREDLIBEXT=.so1
 PACKAGESUFFIX=v1
+FPCMADE=fpcmade.v1
 endif
 
 # Go32v2
 ifeq ($(OS_TARGET),go32v2)
 PACKAGESUFFIX=go32
+FPCMADE=fpcmade.dos
 endif
 
 # Linux
 ifeq ($(OS_TARGET),linux)
 PACKAGESUFFIX=linux
+FPCMADE=fpcmade.lnx
 endif
 
 # Win32
@@ -618,6 +617,7 @@ SMARTEXT=.slw
 STATICLIBEXT=.aw
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=win32
+FPCMADE=fpcmade.w32
 endif
 
 # OS/2
@@ -629,6 +629,7 @@ SMARTEXT=.so
 STATICLIBEXT=.ao2
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=os2
+FPCMADE=fpcmade.os2
 endif
 
 # library prefix
@@ -689,7 +690,7 @@ info: fpc_info
 #####################################################################
 
 ifneq ($(wildcard $(RTLDIR)),)
-ifeq ($(wildcard $(RTLDIR)/$(FPCMAKED)),)
+ifeq ($(wildcard $(RTLDIR)/$(FPCMADE)),)
 override COMPILEPACKAGES+=rtl
 rtl_package:
 	$(MAKE) -C $(RTLDIR) all
@@ -719,12 +720,12 @@ fpc_exes: $(EXEFILES)
 
 .PHONY: fpc_all fpc_debug
 
-$(FPCMAKED):
-	@$(ECHO) Compiled > $(FPCMAKED)
+$(FPCMADE):
+	@$(ECHO) Compiled > $(FPCMADE)
 
 fpc_all: $(addsuffix _package,$(COMPILEPACKAGES)) \
 	 $(addsuffix _component,$(COMPILECOMPONENTS)) \
-	 $(ALLTARGET) $(FPCMAKED)
+	 $(ALLTARGET) $(FPCMADE)
 
 fpc_debug:
 	$(MAKE) all DEBUG=1
@@ -793,7 +794,7 @@ else
 INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLPPUFILES))
 endif
 else
-INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 endif
 endif
 
@@ -924,7 +925,7 @@ ifdef CLEANPPUFILES
 ifdef PPUFILES
 CLEANPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES))
 else
-CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)))
 endif
 endif
 
@@ -941,7 +942,7 @@ endif
 ifdef EXTRACLEANFILES
 	-$(DEL) $(EXTRACLEANFILES)
 endif
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 fpc_cleanall: $(CLEANTARGET)
 ifdef CLEANEXEFILES
@@ -949,7 +950,7 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 #####################################################################
 # Info rules

+ 15 - 14
packages/gtk/tutorial/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-12-06 18:34
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: all
@@ -436,11 +436,6 @@ endif
 # Default Tools
 #####################################################################
 
-# file used to check if a package is compiled
-ifndef FPCMAKED
-FPCMAKED=fpcmaked
-endif
-
 # assembler, redefine it if cross compiling
 ifndef AS
 AS=as
@@ -586,6 +581,7 @@ SMARTEXT=.sl
 STATICLIBEXT=.a
 SHAREDLIBEXT=.so
 PACKAGESUFFIX=
+FPCMADE=fpcmade
 
 # Go32v1
 ifeq ($(OS_TARGET),go32v1)
@@ -596,16 +592,19 @@ SMARTEXT=.sl1
 STATICLIBEXT=.a1
 SHAREDLIBEXT=.so1
 PACKAGESUFFIX=v1
+FPCMADE=fpcmade.v1
 endif
 
 # Go32v2
 ifeq ($(OS_TARGET),go32v2)
 PACKAGESUFFIX=go32
+FPCMADE=fpcmade.dos
 endif
 
 # Linux
 ifeq ($(OS_TARGET),linux)
 PACKAGESUFFIX=linux
+FPCMADE=fpcmade.lnx
 endif
 
 # Win32
@@ -617,6 +616,7 @@ SMARTEXT=.slw
 STATICLIBEXT=.aw
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=win32
+FPCMADE=fpcmade.w32
 endif
 
 # OS/2
@@ -628,6 +628,7 @@ SMARTEXT=.so
 STATICLIBEXT=.ao2
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=os2
+FPCMADE=fpcmade.os2
 endif
 
 # library prefix
@@ -688,7 +689,7 @@ info: fpc_info
 #####################################################################
 
 ifneq ($(wildcard $(RTLDIR)),)
-ifeq ($(wildcard $(RTLDIR)/$(FPCMAKED)),)
+ifeq ($(wildcard $(RTLDIR)/$(FPCMADE)),)
 override COMPILEPACKAGES+=rtl
 rtl_package:
 	$(MAKE) -C $(RTLDIR) all
@@ -718,12 +719,12 @@ fpc_exes: $(EXEFILES)
 
 .PHONY: fpc_all fpc_debug
 
-$(FPCMAKED):
-	@$(ECHO) Compiled > $(FPCMAKED)
+$(FPCMADE):
+	@$(ECHO) Compiled > $(FPCMADE)
 
 fpc_all: $(addsuffix _package,$(COMPILEPACKAGES)) \
 	 $(addsuffix _component,$(COMPILECOMPONENTS)) \
-	 $(ALLTARGET) $(FPCMAKED)
+	 $(ALLTARGET) $(FPCMADE)
 
 fpc_debug:
 	$(MAKE) all DEBUG=1
@@ -792,7 +793,7 @@ else
 INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLPPUFILES))
 endif
 else
-INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 endif
 endif
 
@@ -923,7 +924,7 @@ ifdef CLEANPPUFILES
 ifdef PPUFILES
 CLEANPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES))
 else
-CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)))
 endif
 endif
 
@@ -940,7 +941,7 @@ endif
 ifdef EXTRACLEANFILES
 	-$(DEL) $(EXTRACLEANFILES)
 endif
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 fpc_cleanall: $(CLEANTARGET)
 ifdef CLEANEXEFILES
@@ -948,7 +949,7 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 #####################################################################
 # Info rules

+ 39 - 24
packages/ibase/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-11-25 23:47
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: all
@@ -65,12 +65,17 @@ endif
 
 # What compiler to use ?
 ifndef FPC
+# Compatibility with old makefiles
+ifdef PP
+export FPC=$(PP)
+else
 ifdef inOS2
 export FPC=ppos2$(EXEEXT)
 else
 export FPC=ppc386$(EXEEXT)
 endif
 endif
+endif
 
 # Target OS
 ifndef OS_TARGET
@@ -193,6 +198,7 @@ endif
 
 # create fcldir,rtldir,unitdir
 ifdef FPCDIR
+override FPCDIR:=$(subst \,/,$(FPCDIR))
 ifneq ($(FPCDIR),.)
 override RTLDIR=$(FPCDIR)/rtl/$(OS_TARGET)
 override FCLDIR=$(FPCDIR)/fcl/$(OS_TARGET)
@@ -322,7 +328,15 @@ ifdef CFGFILE
 override FPCOPT+=@$(CFGFILE)
 endif
 
-override COMPILER=$(FPC) $(FPCOPT)
+# For win32 the options are passed using the environment variable FPCEXTCMD
+ifeq ($(OS_SOURCE),win32)
+override FPCEXTCMD:=$(FPCOPT)
+override FPCOPT:=!FPCEXTCMD
+export FPCEXTCMD
+endif
+
+# Compiler commandline
+override COMPILER:=$(FPC) $(FPCOPT)
 
 #####################################################################
 # Shell tools
@@ -384,11 +398,6 @@ endif
 # Default Tools
 #####################################################################
 
-# file used to check if a package is compiled
-ifndef FPCMAKED
-FPCMAKED=fpcmaked
-endif
-
 # assembler, redefine it if cross compiling
 ifndef AS
 AS=as
@@ -414,7 +423,7 @@ endif
 ifeq (,$(findstring -s ,$(COMPILER)))
 EXECPPAS=
 else
-EXECPPAS=@$(PPAS)
+EXECPPAS:=@$(PPAS)
 endif
 
 # ldconfig to rebuild .so cache
@@ -534,6 +543,7 @@ SMARTEXT=.sl
 STATICLIBEXT=.a
 SHAREDLIBEXT=.so
 PACKAGESUFFIX=
+FPCMADE=fpcmade
 
 # Go32v1
 ifeq ($(OS_TARGET),go32v1)
@@ -544,16 +554,19 @@ SMARTEXT=.sl1
 STATICLIBEXT=.a1
 SHAREDLIBEXT=.so1
 PACKAGESUFFIX=v1
+FPCMADE=fpcmade.v1
 endif
 
 # Go32v2
 ifeq ($(OS_TARGET),go32v2)
 PACKAGESUFFIX=go32
+FPCMADE=fpcmade.dos
 endif
 
 # Linux
 ifeq ($(OS_TARGET),linux)
 PACKAGESUFFIX=linux
+FPCMADE=fpcmade.lnx
 endif
 
 # Win32
@@ -565,6 +578,7 @@ SMARTEXT=.slw
 STATICLIBEXT=.aw
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=win32
+FPCMADE=fpcmade.w32
 endif
 
 # OS/2
@@ -576,6 +590,7 @@ SMARTEXT=.so
 STATICLIBEXT=.ao2
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=os2
+FPCMADE=fpcmade.os2
 endif
 
 # library prefix
@@ -640,7 +655,7 @@ info: fpc_info
 #####################################################################
 
 ifneq ($(wildcard $(RTLDIR)),)
-ifeq ($(wildcard $(RTLDIR)/$(FPCMAKED)),)
+ifeq ($(wildcard $(RTLDIR)/$(FPCMADE)),)
 override COMPILEPACKAGES+=rtl
 rtl_package:
 	$(MAKE) -C $(RTLDIR) all
@@ -669,8 +684,8 @@ fpc_units: $(UNITPPUFILES)
 
 .PHONY: fpc_examples fpc_test
 
-override EXAMPLEFILES=$(addsuffix $(EXEEXT),$(EXAMPLEOBJECTS))
-override EXAMPLEOFILES=$(addsuffix $(OEXT),$(EXAMPLEOBJECTS))
+override EXAMPLEFILES:=$(addsuffix $(EXEEXT),$(EXAMPLEOBJECTS))
+override EXAMPLEOFILES:=$(addsuffix $(OEXT),$(EXAMPLEOBJECTS))
 
 override CLEANEXEFILES+=$(EXAMPLEFILES) $(EXAMPLEOFILES)
 
@@ -684,12 +699,12 @@ fpc_test: examples
 
 .PHONY: fpc_all fpc_debug
 
-$(FPCMAKED):
-	@$(ECHO) Compiled > $(FPCMAKED)
+$(FPCMADE):
+	@$(ECHO) Compiled > $(FPCMADE)
 
 fpc_all: $(addsuffix _package,$(COMPILEPACKAGES)) \
 	 $(addsuffix _component,$(COMPILECOMPONENTS)) \
-	 $(ALLTARGET) $(FPCMAKED)
+	 $(ALLTARGET) $(FPCMADE)
 
 fpc_debug:
 	$(MAKE) all DEBUG=1
@@ -722,7 +737,7 @@ fpc_debug:
 
 # Default sharedlib units are all unit objects
 ifndef SHAREDLIBUNITOBJECTS
-SHAREDLIBUNITOBJECTS=$(UNITOBJECTS)
+SHAREDLIBUNITOBJECTS:=$(UNITOBJECTS)
 endif
 
 fpc_smart:
@@ -752,13 +767,13 @@ endif
 ifdef INSTALLPPUFILES
 ifdef PPUFILES
 ifdef inlinux
-INSTALLPPULINKFILES=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
-INSTALLPPULIBFILES=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
+INSTALLPPULIBFILES:=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
 else
-INSTALLPPULINKFILES=$(shell $(PPUFILES) $(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLPPUFILES))
 endif
 else
-INSTALLPPULINKFILES=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 endif
 endif
 
@@ -832,7 +847,7 @@ endif
 
 # Test dir if none specified
 ifndef DESTZIPDIR
-DESTZIPDIR=$(BASEDIR)
+DESTZIPDIR:=$(BASEDIR)
 endif
 
 # Add .zip/.tar.gz extension
@@ -887,9 +902,9 @@ endif
 
 ifdef CLEANPPUFILES
 ifdef PPUFILES
-CLEANPPULINKFILES=$(shell $(PPUFILES) $(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES))
 else
-CLEANPPULINKFILES=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)))
 endif
 endif
 
@@ -906,7 +921,7 @@ endif
 ifdef EXTRACLEANFILES
 	-$(DEL) $(EXTRACLEANFILES)
 endif
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 fpc_cleanall: $(CLEANTARGET)
 ifdef CLEANEXEFILES
@@ -914,7 +929,7 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 #####################################################################
 # Info rules

+ 39 - 24
packages/inet/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-11-25 23:47
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: all
@@ -65,12 +65,17 @@ endif
 
 # What compiler to use ?
 ifndef FPC
+# Compatibility with old makefiles
+ifdef PP
+export FPC=$(PP)
+else
 ifdef inOS2
 export FPC=ppos2$(EXEEXT)
 else
 export FPC=ppc386$(EXEEXT)
 endif
 endif
+endif
 
 # Target OS
 ifndef OS_TARGET
@@ -193,6 +198,7 @@ endif
 
 # create fcldir,rtldir,unitdir
 ifdef FPCDIR
+override FPCDIR:=$(subst \,/,$(FPCDIR))
 ifneq ($(FPCDIR),.)
 override RTLDIR=$(FPCDIR)/rtl/$(OS_TARGET)
 override FCLDIR=$(FPCDIR)/fcl/$(OS_TARGET)
@@ -322,7 +328,15 @@ ifdef CFGFILE
 override FPCOPT+=@$(CFGFILE)
 endif
 
-override COMPILER=$(FPC) $(FPCOPT)
+# For win32 the options are passed using the environment variable FPCEXTCMD
+ifeq ($(OS_SOURCE),win32)
+override FPCEXTCMD:=$(FPCOPT)
+override FPCOPT:=!FPCEXTCMD
+export FPCEXTCMD
+endif
+
+# Compiler commandline
+override COMPILER:=$(FPC) $(FPCOPT)
 
 #####################################################################
 # Shell tools
@@ -384,11 +398,6 @@ endif
 # Default Tools
 #####################################################################
 
-# file used to check if a package is compiled
-ifndef FPCMAKED
-FPCMAKED=fpcmaked
-endif
-
 # assembler, redefine it if cross compiling
 ifndef AS
 AS=as
@@ -414,7 +423,7 @@ endif
 ifeq (,$(findstring -s ,$(COMPILER)))
 EXECPPAS=
 else
-EXECPPAS=@$(PPAS)
+EXECPPAS:=@$(PPAS)
 endif
 
 # ldconfig to rebuild .so cache
@@ -534,6 +543,7 @@ SMARTEXT=.sl
 STATICLIBEXT=.a
 SHAREDLIBEXT=.so
 PACKAGESUFFIX=
+FPCMADE=fpcmade
 
 # Go32v1
 ifeq ($(OS_TARGET),go32v1)
@@ -544,16 +554,19 @@ SMARTEXT=.sl1
 STATICLIBEXT=.a1
 SHAREDLIBEXT=.so1
 PACKAGESUFFIX=v1
+FPCMADE=fpcmade.v1
 endif
 
 # Go32v2
 ifeq ($(OS_TARGET),go32v2)
 PACKAGESUFFIX=go32
+FPCMADE=fpcmade.dos
 endif
 
 # Linux
 ifeq ($(OS_TARGET),linux)
 PACKAGESUFFIX=linux
+FPCMADE=fpcmade.lnx
 endif
 
 # Win32
@@ -565,6 +578,7 @@ SMARTEXT=.slw
 STATICLIBEXT=.aw
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=win32
+FPCMADE=fpcmade.w32
 endif
 
 # OS/2
@@ -576,6 +590,7 @@ SMARTEXT=.so
 STATICLIBEXT=.ao2
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=os2
+FPCMADE=fpcmade.os2
 endif
 
 # library prefix
@@ -640,7 +655,7 @@ info: fpc_info
 #####################################################################
 
 ifneq ($(wildcard $(RTLDIR)),)
-ifeq ($(wildcard $(RTLDIR)/$(FPCMAKED)),)
+ifeq ($(wildcard $(RTLDIR)/$(FPCMADE)),)
 override COMPILEPACKAGES+=rtl
 rtl_package:
 	$(MAKE) -C $(RTLDIR) all
@@ -669,8 +684,8 @@ fpc_units: $(UNITPPUFILES)
 
 .PHONY: fpc_examples fpc_test
 
-override EXAMPLEFILES=$(addsuffix $(EXEEXT),$(EXAMPLEOBJECTS))
-override EXAMPLEOFILES=$(addsuffix $(OEXT),$(EXAMPLEOBJECTS))
+override EXAMPLEFILES:=$(addsuffix $(EXEEXT),$(EXAMPLEOBJECTS))
+override EXAMPLEOFILES:=$(addsuffix $(OEXT),$(EXAMPLEOBJECTS))
 
 override CLEANEXEFILES+=$(EXAMPLEFILES) $(EXAMPLEOFILES)
 
@@ -684,12 +699,12 @@ fpc_test: examples
 
 .PHONY: fpc_all fpc_debug
 
-$(FPCMAKED):
-	@$(ECHO) Compiled > $(FPCMAKED)
+$(FPCMADE):
+	@$(ECHO) Compiled > $(FPCMADE)
 
 fpc_all: $(addsuffix _package,$(COMPILEPACKAGES)) \
 	 $(addsuffix _component,$(COMPILECOMPONENTS)) \
-	 $(ALLTARGET) $(FPCMAKED)
+	 $(ALLTARGET) $(FPCMADE)
 
 fpc_debug:
 	$(MAKE) all DEBUG=1
@@ -722,7 +737,7 @@ fpc_debug:
 
 # Default sharedlib units are all unit objects
 ifndef SHAREDLIBUNITOBJECTS
-SHAREDLIBUNITOBJECTS=$(UNITOBJECTS)
+SHAREDLIBUNITOBJECTS:=$(UNITOBJECTS)
 endif
 
 fpc_smart:
@@ -752,13 +767,13 @@ endif
 ifdef INSTALLPPUFILES
 ifdef PPUFILES
 ifdef inlinux
-INSTALLPPULINKFILES=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
-INSTALLPPULIBFILES=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
+INSTALLPPULIBFILES:=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
 else
-INSTALLPPULINKFILES=$(shell $(PPUFILES) $(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLPPUFILES))
 endif
 else
-INSTALLPPULINKFILES=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 endif
 endif
 
@@ -832,7 +847,7 @@ endif
 
 # Test dir if none specified
 ifndef DESTZIPDIR
-DESTZIPDIR=$(BASEDIR)
+DESTZIPDIR:=$(BASEDIR)
 endif
 
 # Add .zip/.tar.gz extension
@@ -887,9 +902,9 @@ endif
 
 ifdef CLEANPPUFILES
 ifdef PPUFILES
-CLEANPPULINKFILES=$(shell $(PPUFILES) $(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES))
 else
-CLEANPPULINKFILES=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)))
 endif
 endif
 
@@ -906,7 +921,7 @@ endif
 ifdef EXTRACLEANFILES
 	-$(DEL) $(EXTRACLEANFILES)
 endif
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 fpc_cleanall: $(CLEANTARGET)
 ifdef CLEANEXEFILES
@@ -914,7 +929,7 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 #####################################################################
 # Info rules

+ 39 - 24
packages/mysql/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-11-25 23:47
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: all
@@ -65,12 +65,17 @@ endif
 
 # What compiler to use ?
 ifndef FPC
+# Compatibility with old makefiles
+ifdef PP
+export FPC=$(PP)
+else
 ifdef inOS2
 export FPC=ppos2$(EXEEXT)
 else
 export FPC=ppc386$(EXEEXT)
 endif
 endif
+endif
 
 # Target OS
 ifndef OS_TARGET
@@ -193,6 +198,7 @@ endif
 
 # create fcldir,rtldir,unitdir
 ifdef FPCDIR
+override FPCDIR:=$(subst \,/,$(FPCDIR))
 ifneq ($(FPCDIR),.)
 override RTLDIR=$(FPCDIR)/rtl/$(OS_TARGET)
 override FCLDIR=$(FPCDIR)/fcl/$(OS_TARGET)
@@ -322,7 +328,15 @@ ifdef CFGFILE
 override FPCOPT+=@$(CFGFILE)
 endif
 
-override COMPILER=$(FPC) $(FPCOPT)
+# For win32 the options are passed using the environment variable FPCEXTCMD
+ifeq ($(OS_SOURCE),win32)
+override FPCEXTCMD:=$(FPCOPT)
+override FPCOPT:=!FPCEXTCMD
+export FPCEXTCMD
+endif
+
+# Compiler commandline
+override COMPILER:=$(FPC) $(FPCOPT)
 
 #####################################################################
 # Shell tools
@@ -384,11 +398,6 @@ endif
 # Default Tools
 #####################################################################
 
-# file used to check if a package is compiled
-ifndef FPCMAKED
-FPCMAKED=fpcmaked
-endif
-
 # assembler, redefine it if cross compiling
 ifndef AS
 AS=as
@@ -414,7 +423,7 @@ endif
 ifeq (,$(findstring -s ,$(COMPILER)))
 EXECPPAS=
 else
-EXECPPAS=@$(PPAS)
+EXECPPAS:=@$(PPAS)
 endif
 
 # ldconfig to rebuild .so cache
@@ -534,6 +543,7 @@ SMARTEXT=.sl
 STATICLIBEXT=.a
 SHAREDLIBEXT=.so
 PACKAGESUFFIX=
+FPCMADE=fpcmade
 
 # Go32v1
 ifeq ($(OS_TARGET),go32v1)
@@ -544,16 +554,19 @@ SMARTEXT=.sl1
 STATICLIBEXT=.a1
 SHAREDLIBEXT=.so1
 PACKAGESUFFIX=v1
+FPCMADE=fpcmade.v1
 endif
 
 # Go32v2
 ifeq ($(OS_TARGET),go32v2)
 PACKAGESUFFIX=go32
+FPCMADE=fpcmade.dos
 endif
 
 # Linux
 ifeq ($(OS_TARGET),linux)
 PACKAGESUFFIX=linux
+FPCMADE=fpcmade.lnx
 endif
 
 # Win32
@@ -565,6 +578,7 @@ SMARTEXT=.slw
 STATICLIBEXT=.aw
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=win32
+FPCMADE=fpcmade.w32
 endif
 
 # OS/2
@@ -576,6 +590,7 @@ SMARTEXT=.so
 STATICLIBEXT=.ao2
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=os2
+FPCMADE=fpcmade.os2
 endif
 
 # library prefix
@@ -640,7 +655,7 @@ info: fpc_info
 #####################################################################
 
 ifneq ($(wildcard $(RTLDIR)),)
-ifeq ($(wildcard $(RTLDIR)/$(FPCMAKED)),)
+ifeq ($(wildcard $(RTLDIR)/$(FPCMADE)),)
 override COMPILEPACKAGES+=rtl
 rtl_package:
 	$(MAKE) -C $(RTLDIR) all
@@ -669,8 +684,8 @@ fpc_units: $(UNITPPUFILES)
 
 .PHONY: fpc_examples fpc_test
 
-override EXAMPLEFILES=$(addsuffix $(EXEEXT),$(EXAMPLEOBJECTS))
-override EXAMPLEOFILES=$(addsuffix $(OEXT),$(EXAMPLEOBJECTS))
+override EXAMPLEFILES:=$(addsuffix $(EXEEXT),$(EXAMPLEOBJECTS))
+override EXAMPLEOFILES:=$(addsuffix $(OEXT),$(EXAMPLEOBJECTS))
 
 override CLEANEXEFILES+=$(EXAMPLEFILES) $(EXAMPLEOFILES)
 
@@ -684,12 +699,12 @@ fpc_test: examples
 
 .PHONY: fpc_all fpc_debug
 
-$(FPCMAKED):
-	@$(ECHO) Compiled > $(FPCMAKED)
+$(FPCMADE):
+	@$(ECHO) Compiled > $(FPCMADE)
 
 fpc_all: $(addsuffix _package,$(COMPILEPACKAGES)) \
 	 $(addsuffix _component,$(COMPILECOMPONENTS)) \
-	 $(ALLTARGET) $(FPCMAKED)
+	 $(ALLTARGET) $(FPCMADE)
 
 fpc_debug:
 	$(MAKE) all DEBUG=1
@@ -722,7 +737,7 @@ fpc_debug:
 
 # Default sharedlib units are all unit objects
 ifndef SHAREDLIBUNITOBJECTS
-SHAREDLIBUNITOBJECTS=$(UNITOBJECTS)
+SHAREDLIBUNITOBJECTS:=$(UNITOBJECTS)
 endif
 
 fpc_smart:
@@ -752,13 +767,13 @@ endif
 ifdef INSTALLPPUFILES
 ifdef PPUFILES
 ifdef inlinux
-INSTALLPPULINKFILES=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
-INSTALLPPULIBFILES=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
+INSTALLPPULIBFILES:=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
 else
-INSTALLPPULINKFILES=$(shell $(PPUFILES) $(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLPPUFILES))
 endif
 else
-INSTALLPPULINKFILES=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 endif
 endif
 
@@ -832,7 +847,7 @@ endif
 
 # Test dir if none specified
 ifndef DESTZIPDIR
-DESTZIPDIR=$(BASEDIR)
+DESTZIPDIR:=$(BASEDIR)
 endif
 
 # Add .zip/.tar.gz extension
@@ -887,9 +902,9 @@ endif
 
 ifdef CLEANPPUFILES
 ifdef PPUFILES
-CLEANPPULINKFILES=$(shell $(PPUFILES) $(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES))
 else
-CLEANPPULINKFILES=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)))
 endif
 endif
 
@@ -906,7 +921,7 @@ endif
 ifdef EXTRACLEANFILES
 	-$(DEL) $(EXTRACLEANFILES)
 endif
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 fpc_cleanall: $(CLEANTARGET)
 ifdef CLEANEXEFILES
@@ -914,7 +929,7 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 #####################################################################
 # Info rules

+ 39 - 24
packages/ncurses/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-11-25 23:46
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: all
@@ -65,12 +65,17 @@ endif
 
 # What compiler to use ?
 ifndef FPC
+# Compatibility with old makefiles
+ifdef PP
+export FPC=$(PP)
+else
 ifdef inOS2
 export FPC=ppos2$(EXEEXT)
 else
 export FPC=ppc386$(EXEEXT)
 endif
 endif
+endif
 
 # Target OS
 ifndef OS_TARGET
@@ -193,6 +198,7 @@ endif
 
 # create fcldir,rtldir,unitdir
 ifdef FPCDIR
+override FPCDIR:=$(subst \,/,$(FPCDIR))
 ifneq ($(FPCDIR),.)
 override RTLDIR=$(FPCDIR)/rtl/$(OS_TARGET)
 override FCLDIR=$(FPCDIR)/fcl/$(OS_TARGET)
@@ -322,7 +328,15 @@ ifdef CFGFILE
 override FPCOPT+=@$(CFGFILE)
 endif
 
-override COMPILER=$(FPC) $(FPCOPT)
+# For win32 the options are passed using the environment variable FPCEXTCMD
+ifeq ($(OS_SOURCE),win32)
+override FPCEXTCMD:=$(FPCOPT)
+override FPCOPT:=!FPCEXTCMD
+export FPCEXTCMD
+endif
+
+# Compiler commandline
+override COMPILER:=$(FPC) $(FPCOPT)
 
 #####################################################################
 # Shell tools
@@ -384,11 +398,6 @@ endif
 # Default Tools
 #####################################################################
 
-# file used to check if a package is compiled
-ifndef FPCMAKED
-FPCMAKED=fpcmaked
-endif
-
 # assembler, redefine it if cross compiling
 ifndef AS
 AS=as
@@ -414,7 +423,7 @@ endif
 ifeq (,$(findstring -s ,$(COMPILER)))
 EXECPPAS=
 else
-EXECPPAS=@$(PPAS)
+EXECPPAS:=@$(PPAS)
 endif
 
 # ldconfig to rebuild .so cache
@@ -534,6 +543,7 @@ SMARTEXT=.sl
 STATICLIBEXT=.a
 SHAREDLIBEXT=.so
 PACKAGESUFFIX=
+FPCMADE=fpcmade
 
 # Go32v1
 ifeq ($(OS_TARGET),go32v1)
@@ -544,16 +554,19 @@ SMARTEXT=.sl1
 STATICLIBEXT=.a1
 SHAREDLIBEXT=.so1
 PACKAGESUFFIX=v1
+FPCMADE=fpcmade.v1
 endif
 
 # Go32v2
 ifeq ($(OS_TARGET),go32v2)
 PACKAGESUFFIX=go32
+FPCMADE=fpcmade.dos
 endif
 
 # Linux
 ifeq ($(OS_TARGET),linux)
 PACKAGESUFFIX=linux
+FPCMADE=fpcmade.lnx
 endif
 
 # Win32
@@ -565,6 +578,7 @@ SMARTEXT=.slw
 STATICLIBEXT=.aw
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=win32
+FPCMADE=fpcmade.w32
 endif
 
 # OS/2
@@ -576,6 +590,7 @@ SMARTEXT=.so
 STATICLIBEXT=.ao2
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=os2
+FPCMADE=fpcmade.os2
 endif
 
 # library prefix
@@ -640,7 +655,7 @@ info: fpc_info
 #####################################################################
 
 ifneq ($(wildcard $(RTLDIR)),)
-ifeq ($(wildcard $(RTLDIR)/$(FPCMAKED)),)
+ifeq ($(wildcard $(RTLDIR)/$(FPCMADE)),)
 override COMPILEPACKAGES+=rtl
 rtl_package:
 	$(MAKE) -C $(RTLDIR) all
@@ -669,8 +684,8 @@ fpc_units: $(UNITPPUFILES)
 
 .PHONY: fpc_examples fpc_test
 
-override EXAMPLEFILES=$(addsuffix $(EXEEXT),$(EXAMPLEOBJECTS))
-override EXAMPLEOFILES=$(addsuffix $(OEXT),$(EXAMPLEOBJECTS))
+override EXAMPLEFILES:=$(addsuffix $(EXEEXT),$(EXAMPLEOBJECTS))
+override EXAMPLEOFILES:=$(addsuffix $(OEXT),$(EXAMPLEOBJECTS))
 
 override CLEANEXEFILES+=$(EXAMPLEFILES) $(EXAMPLEOFILES)
 
@@ -684,12 +699,12 @@ fpc_test: examples
 
 .PHONY: fpc_all fpc_debug
 
-$(FPCMAKED):
-	@$(ECHO) Compiled > $(FPCMAKED)
+$(FPCMADE):
+	@$(ECHO) Compiled > $(FPCMADE)
 
 fpc_all: $(addsuffix _package,$(COMPILEPACKAGES)) \
 	 $(addsuffix _component,$(COMPILECOMPONENTS)) \
-	 $(ALLTARGET) $(FPCMAKED)
+	 $(ALLTARGET) $(FPCMADE)
 
 fpc_debug:
 	$(MAKE) all DEBUG=1
@@ -722,7 +737,7 @@ fpc_debug:
 
 # Default sharedlib units are all unit objects
 ifndef SHAREDLIBUNITOBJECTS
-SHAREDLIBUNITOBJECTS=$(UNITOBJECTS)
+SHAREDLIBUNITOBJECTS:=$(UNITOBJECTS)
 endif
 
 fpc_smart:
@@ -752,13 +767,13 @@ endif
 ifdef INSTALLPPUFILES
 ifdef PPUFILES
 ifdef inlinux
-INSTALLPPULINKFILES=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
-INSTALLPPULIBFILES=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
+INSTALLPPULIBFILES:=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
 else
-INSTALLPPULINKFILES=$(shell $(PPUFILES) $(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLPPUFILES))
 endif
 else
-INSTALLPPULINKFILES=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 endif
 endif
 
@@ -832,7 +847,7 @@ endif
 
 # Test dir if none specified
 ifndef DESTZIPDIR
-DESTZIPDIR=$(BASEDIR)
+DESTZIPDIR:=$(BASEDIR)
 endif
 
 # Add .zip/.tar.gz extension
@@ -887,9 +902,9 @@ endif
 
 ifdef CLEANPPUFILES
 ifdef PPUFILES
-CLEANPPULINKFILES=$(shell $(PPUFILES) $(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES))
 else
-CLEANPPULINKFILES=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)))
 endif
 endif
 
@@ -906,7 +921,7 @@ endif
 ifdef EXTRACLEANFILES
 	-$(DEL) $(EXTRACLEANFILES)
 endif
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 fpc_cleanall: $(CLEANTARGET)
 ifdef CLEANEXEFILES
@@ -914,7 +929,7 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 #####################################################################
 # Info rules

+ 37 - 22
packages/opengl/demos/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-11-28 18:26
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: all
@@ -65,12 +65,17 @@ endif
 
 # What compiler to use ?
 ifndef FPC
+# Compatibility with old makefiles
+ifdef PP
+export FPC=$(PP)
+else
 ifdef inOS2
 export FPC=ppos2$(EXEEXT)
 else
 export FPC=ppc386$(EXEEXT)
 endif
 endif
+endif
 
 # Target OS
 ifndef OS_TARGET
@@ -189,6 +194,7 @@ endif
 
 # create fcldir,rtldir,unitdir
 ifdef FPCDIR
+override FPCDIR:=$(subst \,/,$(FPCDIR))
 ifneq ($(FPCDIR),.)
 override RTLDIR=$(FPCDIR)/rtl/$(OS_TARGET)
 override FCLDIR=$(FPCDIR)/fcl/$(OS_TARGET)
@@ -310,7 +316,15 @@ ifdef CFGFILE
 override FPCOPT+=@$(CFGFILE)
 endif
 
-override COMPILER=$(FPC) $(FPCOPT)
+# For win32 the options are passed using the environment variable FPCEXTCMD
+ifeq ($(OS_SOURCE),win32)
+override FPCEXTCMD:=$(FPCOPT)
+override FPCOPT:=!FPCEXTCMD
+export FPCEXTCMD
+endif
+
+# Compiler commandline
+override COMPILER:=$(FPC) $(FPCOPT)
 
 #####################################################################
 # Shell tools
@@ -372,11 +386,6 @@ endif
 # Default Tools
 #####################################################################
 
-# file used to check if a package is compiled
-ifndef FPCMAKED
-FPCMAKED=fpcmaked
-endif
-
 # assembler, redefine it if cross compiling
 ifndef AS
 AS=as
@@ -402,7 +411,7 @@ endif
 ifeq (,$(findstring -s ,$(COMPILER)))
 EXECPPAS=
 else
-EXECPPAS=@$(PPAS)
+EXECPPAS:=@$(PPAS)
 endif
 
 # ldconfig to rebuild .so cache
@@ -522,6 +531,7 @@ SMARTEXT=.sl
 STATICLIBEXT=.a
 SHAREDLIBEXT=.so
 PACKAGESUFFIX=
+FPCMADE=fpcmade
 
 # Go32v1
 ifeq ($(OS_TARGET),go32v1)
@@ -532,16 +542,19 @@ SMARTEXT=.sl1
 STATICLIBEXT=.a1
 SHAREDLIBEXT=.so1
 PACKAGESUFFIX=v1
+FPCMADE=fpcmade.v1
 endif
 
 # Go32v2
 ifeq ($(OS_TARGET),go32v2)
 PACKAGESUFFIX=go32
+FPCMADE=fpcmade.dos
 endif
 
 # Linux
 ifeq ($(OS_TARGET),linux)
 PACKAGESUFFIX=linux
+FPCMADE=fpcmade.lnx
 endif
 
 # Win32
@@ -553,6 +566,7 @@ SMARTEXT=.slw
 STATICLIBEXT=.aw
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=win32
+FPCMADE=fpcmade.w32
 endif
 
 # OS/2
@@ -564,6 +578,7 @@ SMARTEXT=.so
 STATICLIBEXT=.ao2
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=os2
+FPCMADE=fpcmade.os2
 endif
 
 # library prefix
@@ -624,7 +639,7 @@ info: fpc_info
 #####################################################################
 
 ifneq ($(wildcard $(RTLDIR)),)
-ifeq ($(wildcard $(RTLDIR)/$(FPCMAKED)),)
+ifeq ($(wildcard $(RTLDIR)/$(FPCMADE)),)
 override COMPILEPACKAGES+=rtl
 rtl_package:
 	$(MAKE) -C $(RTLDIR) all
@@ -654,12 +669,12 @@ fpc_exes: $(EXEFILES)
 
 .PHONY: fpc_all fpc_debug
 
-$(FPCMAKED):
-	@$(ECHO) Compiled > $(FPCMAKED)
+$(FPCMADE):
+	@$(ECHO) Compiled > $(FPCMADE)
 
 fpc_all: $(addsuffix _package,$(COMPILEPACKAGES)) \
 	 $(addsuffix _component,$(COMPILECOMPONENTS)) \
-	 $(ALLTARGET) $(FPCMAKED)
+	 $(ALLTARGET) $(FPCMADE)
 
 fpc_debug:
 	$(MAKE) all DEBUG=1
@@ -692,7 +707,7 @@ fpc_debug:
 
 # Default sharedlib units are all unit objects
 ifndef SHAREDLIBUNITOBJECTS
-SHAREDLIBUNITOBJECTS=$(UNITOBJECTS)
+SHAREDLIBUNITOBJECTS:=$(UNITOBJECTS)
 endif
 
 fpc_smart:
@@ -722,13 +737,13 @@ endif
 ifdef INSTALLPPUFILES
 ifdef PPUFILES
 ifdef inlinux
-INSTALLPPULINKFILES=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
-INSTALLPPULIBFILES=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
+INSTALLPPULIBFILES:=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
 else
-INSTALLPPULINKFILES=$(shell $(PPUFILES) $(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLPPUFILES))
 endif
 else
-INSTALLPPULINKFILES=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 endif
 endif
 
@@ -802,7 +817,7 @@ endif
 
 # Test dir if none specified
 ifndef DESTZIPDIR
-DESTZIPDIR=$(BASEDIR)
+DESTZIPDIR:=$(BASEDIR)
 endif
 
 # Add .zip/.tar.gz extension
@@ -857,9 +872,9 @@ endif
 
 ifdef CLEANPPUFILES
 ifdef PPUFILES
-CLEANPPULINKFILES=$(shell $(PPUFILES) $(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES))
 else
-CLEANPPULINKFILES=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)))
 endif
 endif
 
@@ -876,7 +891,7 @@ endif
 ifdef EXTRACLEANFILES
 	-$(DEL) $(EXTRACLEANFILES)
 endif
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 fpc_cleanall: $(CLEANTARGET)
 ifdef CLEANEXEFILES
@@ -884,7 +899,7 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 #####################################################################
 # Info rules

+ 37 - 22
packages/opengl/linuxd/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-11-28 18:15
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: all
@@ -65,12 +65,17 @@ endif
 
 # What compiler to use ?
 ifndef FPC
+# Compatibility with old makefiles
+ifdef PP
+export FPC=$(PP)
+else
 ifdef inOS2
 export FPC=ppos2$(EXEEXT)
 else
 export FPC=ppc386$(EXEEXT)
 endif
 endif
+endif
 
 # Target OS
 ifndef OS_TARGET
@@ -189,6 +194,7 @@ endif
 
 # create fcldir,rtldir,unitdir
 ifdef FPCDIR
+override FPCDIR:=$(subst \,/,$(FPCDIR))
 ifneq ($(FPCDIR),.)
 override RTLDIR=$(FPCDIR)/rtl/$(OS_TARGET)
 override FCLDIR=$(FPCDIR)/fcl/$(OS_TARGET)
@@ -310,7 +316,15 @@ ifdef CFGFILE
 override FPCOPT+=@$(CFGFILE)
 endif
 
-override COMPILER=$(FPC) $(FPCOPT)
+# For win32 the options are passed using the environment variable FPCEXTCMD
+ifeq ($(OS_SOURCE),win32)
+override FPCEXTCMD:=$(FPCOPT)
+override FPCOPT:=!FPCEXTCMD
+export FPCEXTCMD
+endif
+
+# Compiler commandline
+override COMPILER:=$(FPC) $(FPCOPT)
 
 #####################################################################
 # Shell tools
@@ -372,11 +386,6 @@ endif
 # Default Tools
 #####################################################################
 
-# file used to check if a package is compiled
-ifndef FPCMAKED
-FPCMAKED=fpcmaked
-endif
-
 # assembler, redefine it if cross compiling
 ifndef AS
 AS=as
@@ -402,7 +411,7 @@ endif
 ifeq (,$(findstring -s ,$(COMPILER)))
 EXECPPAS=
 else
-EXECPPAS=@$(PPAS)
+EXECPPAS:=@$(PPAS)
 endif
 
 # ldconfig to rebuild .so cache
@@ -522,6 +531,7 @@ SMARTEXT=.sl
 STATICLIBEXT=.a
 SHAREDLIBEXT=.so
 PACKAGESUFFIX=
+FPCMADE=fpcmade
 
 # Go32v1
 ifeq ($(OS_TARGET),go32v1)
@@ -532,16 +542,19 @@ SMARTEXT=.sl1
 STATICLIBEXT=.a1
 SHAREDLIBEXT=.so1
 PACKAGESUFFIX=v1
+FPCMADE=fpcmade.v1
 endif
 
 # Go32v2
 ifeq ($(OS_TARGET),go32v2)
 PACKAGESUFFIX=go32
+FPCMADE=fpcmade.dos
 endif
 
 # Linux
 ifeq ($(OS_TARGET),linux)
 PACKAGESUFFIX=linux
+FPCMADE=fpcmade.lnx
 endif
 
 # Win32
@@ -553,6 +566,7 @@ SMARTEXT=.slw
 STATICLIBEXT=.aw
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=win32
+FPCMADE=fpcmade.w32
 endif
 
 # OS/2
@@ -564,6 +578,7 @@ SMARTEXT=.so
 STATICLIBEXT=.ao2
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=os2
+FPCMADE=fpcmade.os2
 endif
 
 # library prefix
@@ -624,7 +639,7 @@ info: fpc_info
 #####################################################################
 
 ifneq ($(wildcard $(RTLDIR)),)
-ifeq ($(wildcard $(RTLDIR)/$(FPCMAKED)),)
+ifeq ($(wildcard $(RTLDIR)/$(FPCMADE)),)
 override COMPILEPACKAGES+=rtl
 rtl_package:
 	$(MAKE) -C $(RTLDIR) all
@@ -653,12 +668,12 @@ fpc_units: $(UNITPPUFILES)
 
 .PHONY: fpc_all fpc_debug
 
-$(FPCMAKED):
-	@$(ECHO) Compiled > $(FPCMAKED)
+$(FPCMADE):
+	@$(ECHO) Compiled > $(FPCMADE)
 
 fpc_all: $(addsuffix _package,$(COMPILEPACKAGES)) \
 	 $(addsuffix _component,$(COMPILECOMPONENTS)) \
-	 $(ALLTARGET) $(FPCMAKED)
+	 $(ALLTARGET) $(FPCMADE)
 
 fpc_debug:
 	$(MAKE) all DEBUG=1
@@ -691,7 +706,7 @@ fpc_debug:
 
 # Default sharedlib units are all unit objects
 ifndef SHAREDLIBUNITOBJECTS
-SHAREDLIBUNITOBJECTS=$(UNITOBJECTS)
+SHAREDLIBUNITOBJECTS:=$(UNITOBJECTS)
 endif
 
 fpc_smart:
@@ -721,13 +736,13 @@ endif
 ifdef INSTALLPPUFILES
 ifdef PPUFILES
 ifdef inlinux
-INSTALLPPULINKFILES=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
-INSTALLPPULIBFILES=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
+INSTALLPPULIBFILES:=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
 else
-INSTALLPPULINKFILES=$(shell $(PPUFILES) $(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLPPUFILES))
 endif
 else
-INSTALLPPULINKFILES=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 endif
 endif
 
@@ -801,7 +816,7 @@ endif
 
 # Test dir if none specified
 ifndef DESTZIPDIR
-DESTZIPDIR=$(BASEDIR)
+DESTZIPDIR:=$(BASEDIR)
 endif
 
 # Add .zip/.tar.gz extension
@@ -856,9 +871,9 @@ endif
 
 ifdef CLEANPPUFILES
 ifdef PPUFILES
-CLEANPPULINKFILES=$(shell $(PPUFILES) $(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES))
 else
-CLEANPPULINKFILES=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)))
 endif
 endif
 
@@ -875,7 +890,7 @@ endif
 ifdef EXTRACLEANFILES
 	-$(DEL) $(EXTRACLEANFILES)
 endif
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 fpc_cleanall: $(CLEANTARGET)
 ifdef CLEANEXEFILES
@@ -883,7 +898,7 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 #####################################################################
 # Info rules

+ 39 - 24
packages/opengl/old/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-11-25 23:46
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: all
@@ -65,12 +65,17 @@ endif
 
 # What compiler to use ?
 ifndef FPC
+# Compatibility with old makefiles
+ifdef PP
+export FPC=$(PP)
+else
 ifdef inOS2
 export FPC=ppos2$(EXEEXT)
 else
 export FPC=ppc386$(EXEEXT)
 endif
 endif
+endif
 
 # Target OS
 ifndef OS_TARGET
@@ -194,6 +199,7 @@ endif
 
 # create fcldir,rtldir,unitdir
 ifdef FPCDIR
+override FPCDIR:=$(subst \,/,$(FPCDIR))
 ifneq ($(FPCDIR),.)
 override RTLDIR=$(FPCDIR)/rtl/$(OS_TARGET)
 override FCLDIR=$(FPCDIR)/fcl/$(OS_TARGET)
@@ -327,7 +333,15 @@ ifdef CFGFILE
 override FPCOPT+=@$(CFGFILE)
 endif
 
-override COMPILER=$(FPC) $(FPCOPT)
+# For win32 the options are passed using the environment variable FPCEXTCMD
+ifeq ($(OS_SOURCE),win32)
+override FPCEXTCMD:=$(FPCOPT)
+override FPCOPT:=!FPCEXTCMD
+export FPCEXTCMD
+endif
+
+# Compiler commandline
+override COMPILER:=$(FPC) $(FPCOPT)
 
 #####################################################################
 # Shell tools
@@ -389,11 +403,6 @@ endif
 # Default Tools
 #####################################################################
 
-# file used to check if a package is compiled
-ifndef FPCMAKED
-FPCMAKED=fpcmaked
-endif
-
 # assembler, redefine it if cross compiling
 ifndef AS
 AS=as
@@ -419,7 +428,7 @@ endif
 ifeq (,$(findstring -s ,$(COMPILER)))
 EXECPPAS=
 else
-EXECPPAS=@$(PPAS)
+EXECPPAS:=@$(PPAS)
 endif
 
 # ldconfig to rebuild .so cache
@@ -539,6 +548,7 @@ SMARTEXT=.sl
 STATICLIBEXT=.a
 SHAREDLIBEXT=.so
 PACKAGESUFFIX=
+FPCMADE=fpcmade
 
 # Go32v1
 ifeq ($(OS_TARGET),go32v1)
@@ -549,16 +559,19 @@ SMARTEXT=.sl1
 STATICLIBEXT=.a1
 SHAREDLIBEXT=.so1
 PACKAGESUFFIX=v1
+FPCMADE=fpcmade.v1
 endif
 
 # Go32v2
 ifeq ($(OS_TARGET),go32v2)
 PACKAGESUFFIX=go32
+FPCMADE=fpcmade.dos
 endif
 
 # Linux
 ifeq ($(OS_TARGET),linux)
 PACKAGESUFFIX=linux
+FPCMADE=fpcmade.lnx
 endif
 
 # Win32
@@ -570,6 +583,7 @@ SMARTEXT=.slw
 STATICLIBEXT=.aw
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=win32
+FPCMADE=fpcmade.w32
 endif
 
 # OS/2
@@ -581,6 +595,7 @@ SMARTEXT=.so
 STATICLIBEXT=.ao2
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=os2
+FPCMADE=fpcmade.os2
 endif
 
 # library prefix
@@ -645,7 +660,7 @@ info: fpc_info
 #####################################################################
 
 ifneq ($(wildcard $(RTLDIR)),)
-ifeq ($(wildcard $(RTLDIR)/$(FPCMAKED)),)
+ifeq ($(wildcard $(RTLDIR)/$(FPCMADE)),)
 override COMPILEPACKAGES+=rtl
 rtl_package:
 	$(MAKE) -C $(RTLDIR) all
@@ -674,8 +689,8 @@ fpc_units: $(UNITPPUFILES)
 
 .PHONY: fpc_examples fpc_test
 
-override EXAMPLEFILES=$(addsuffix $(EXEEXT),$(EXAMPLEOBJECTS))
-override EXAMPLEOFILES=$(addsuffix $(OEXT),$(EXAMPLEOBJECTS))
+override EXAMPLEFILES:=$(addsuffix $(EXEEXT),$(EXAMPLEOBJECTS))
+override EXAMPLEOFILES:=$(addsuffix $(OEXT),$(EXAMPLEOBJECTS))
 
 override CLEANEXEFILES+=$(EXAMPLEFILES) $(EXAMPLEOFILES)
 
@@ -689,12 +704,12 @@ fpc_test: examples
 
 .PHONY: fpc_all fpc_debug
 
-$(FPCMAKED):
-	@$(ECHO) Compiled > $(FPCMAKED)
+$(FPCMADE):
+	@$(ECHO) Compiled > $(FPCMADE)
 
 fpc_all: $(addsuffix _package,$(COMPILEPACKAGES)) \
 	 $(addsuffix _component,$(COMPILECOMPONENTS)) \
-	 $(ALLTARGET) $(FPCMAKED)
+	 $(ALLTARGET) $(FPCMADE)
 
 fpc_debug:
 	$(MAKE) all DEBUG=1
@@ -727,7 +742,7 @@ fpc_debug:
 
 # Default sharedlib units are all unit objects
 ifndef SHAREDLIBUNITOBJECTS
-SHAREDLIBUNITOBJECTS=$(UNITOBJECTS)
+SHAREDLIBUNITOBJECTS:=$(UNITOBJECTS)
 endif
 
 fpc_smart:
@@ -757,13 +772,13 @@ endif
 ifdef INSTALLPPUFILES
 ifdef PPUFILES
 ifdef inlinux
-INSTALLPPULINKFILES=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
-INSTALLPPULIBFILES=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
+INSTALLPPULIBFILES:=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
 else
-INSTALLPPULINKFILES=$(shell $(PPUFILES) $(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLPPUFILES))
 endif
 else
-INSTALLPPULINKFILES=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 endif
 endif
 
@@ -837,7 +852,7 @@ endif
 
 # Test dir if none specified
 ifndef DESTZIPDIR
-DESTZIPDIR=$(BASEDIR)
+DESTZIPDIR:=$(BASEDIR)
 endif
 
 # Add .zip/.tar.gz extension
@@ -892,9 +907,9 @@ endif
 
 ifdef CLEANPPUFILES
 ifdef PPUFILES
-CLEANPPULINKFILES=$(shell $(PPUFILES) $(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES))
 else
-CLEANPPULINKFILES=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)))
 endif
 endif
 
@@ -911,7 +926,7 @@ endif
 ifdef EXTRACLEANFILES
 	-$(DEL) $(EXTRACLEANFILES)
 endif
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 fpc_cleanall: $(CLEANTARGET)
 ifdef CLEANEXEFILES
@@ -919,7 +934,7 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 #####################################################################
 # Info rules

+ 39 - 24
packages/paszlib/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-11-25 23:47
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: all
@@ -65,12 +65,17 @@ endif
 
 # What compiler to use ?
 ifndef FPC
+# Compatibility with old makefiles
+ifdef PP
+export FPC=$(PP)
+else
 ifdef inOS2
 export FPC=ppos2$(EXEEXT)
 else
 export FPC=ppc386$(EXEEXT)
 endif
 endif
+endif
 
 # Target OS
 ifndef OS_TARGET
@@ -194,6 +199,7 @@ endif
 
 # create fcldir,rtldir,unitdir
 ifdef FPCDIR
+override FPCDIR:=$(subst \,/,$(FPCDIR))
 ifneq ($(FPCDIR),.)
 override RTLDIR=$(FPCDIR)/rtl/$(OS_TARGET)
 override FCLDIR=$(FPCDIR)/fcl/$(OS_TARGET)
@@ -327,7 +333,15 @@ ifdef CFGFILE
 override FPCOPT+=@$(CFGFILE)
 endif
 
-override COMPILER=$(FPC) $(FPCOPT)
+# For win32 the options are passed using the environment variable FPCEXTCMD
+ifeq ($(OS_SOURCE),win32)
+override FPCEXTCMD:=$(FPCOPT)
+override FPCOPT:=!FPCEXTCMD
+export FPCEXTCMD
+endif
+
+# Compiler commandline
+override COMPILER:=$(FPC) $(FPCOPT)
 
 #####################################################################
 # Shell tools
@@ -389,11 +403,6 @@ endif
 # Default Tools
 #####################################################################
 
-# file used to check if a package is compiled
-ifndef FPCMAKED
-FPCMAKED=fpcmaked
-endif
-
 # assembler, redefine it if cross compiling
 ifndef AS
 AS=as
@@ -419,7 +428,7 @@ endif
 ifeq (,$(findstring -s ,$(COMPILER)))
 EXECPPAS=
 else
-EXECPPAS=@$(PPAS)
+EXECPPAS:=@$(PPAS)
 endif
 
 # ldconfig to rebuild .so cache
@@ -539,6 +548,7 @@ SMARTEXT=.sl
 STATICLIBEXT=.a
 SHAREDLIBEXT=.so
 PACKAGESUFFIX=
+FPCMADE=fpcmade
 
 # Go32v1
 ifeq ($(OS_TARGET),go32v1)
@@ -549,16 +559,19 @@ SMARTEXT=.sl1
 STATICLIBEXT=.a1
 SHAREDLIBEXT=.so1
 PACKAGESUFFIX=v1
+FPCMADE=fpcmade.v1
 endif
 
 # Go32v2
 ifeq ($(OS_TARGET),go32v2)
 PACKAGESUFFIX=go32
+FPCMADE=fpcmade.dos
 endif
 
 # Linux
 ifeq ($(OS_TARGET),linux)
 PACKAGESUFFIX=linux
+FPCMADE=fpcmade.lnx
 endif
 
 # Win32
@@ -570,6 +583,7 @@ SMARTEXT=.slw
 STATICLIBEXT=.aw
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=win32
+FPCMADE=fpcmade.w32
 endif
 
 # OS/2
@@ -581,6 +595,7 @@ SMARTEXT=.so
 STATICLIBEXT=.ao2
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=os2
+FPCMADE=fpcmade.os2
 endif
 
 # library prefix
@@ -645,7 +660,7 @@ info: fpc_info
 #####################################################################
 
 ifneq ($(wildcard $(RTLDIR)),)
-ifeq ($(wildcard $(RTLDIR)/$(FPCMAKED)),)
+ifeq ($(wildcard $(RTLDIR)/$(FPCMADE)),)
 override COMPILEPACKAGES+=rtl
 rtl_package:
 	$(MAKE) -C $(RTLDIR) all
@@ -674,8 +689,8 @@ fpc_units: $(UNITPPUFILES)
 
 .PHONY: fpc_examples fpc_test
 
-override EXAMPLEFILES=$(addsuffix $(EXEEXT),$(EXAMPLEOBJECTS))
-override EXAMPLEOFILES=$(addsuffix $(OEXT),$(EXAMPLEOBJECTS))
+override EXAMPLEFILES:=$(addsuffix $(EXEEXT),$(EXAMPLEOBJECTS))
+override EXAMPLEOFILES:=$(addsuffix $(OEXT),$(EXAMPLEOBJECTS))
 
 override CLEANEXEFILES+=$(EXAMPLEFILES) $(EXAMPLEOFILES)
 
@@ -689,12 +704,12 @@ fpc_test: examples
 
 .PHONY: fpc_all fpc_debug
 
-$(FPCMAKED):
-	@$(ECHO) Compiled > $(FPCMAKED)
+$(FPCMADE):
+	@$(ECHO) Compiled > $(FPCMADE)
 
 fpc_all: $(addsuffix _package,$(COMPILEPACKAGES)) \
 	 $(addsuffix _component,$(COMPILECOMPONENTS)) \
-	 $(ALLTARGET) $(FPCMAKED)
+	 $(ALLTARGET) $(FPCMADE)
 
 fpc_debug:
 	$(MAKE) all DEBUG=1
@@ -727,7 +742,7 @@ fpc_debug:
 
 # Default sharedlib units are all unit objects
 ifndef SHAREDLIBUNITOBJECTS
-SHAREDLIBUNITOBJECTS=$(UNITOBJECTS)
+SHAREDLIBUNITOBJECTS:=$(UNITOBJECTS)
 endif
 
 fpc_smart:
@@ -757,13 +772,13 @@ endif
 ifdef INSTALLPPUFILES
 ifdef PPUFILES
 ifdef inlinux
-INSTALLPPULINKFILES=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
-INSTALLPPULIBFILES=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
+INSTALLPPULIBFILES:=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
 else
-INSTALLPPULINKFILES=$(shell $(PPUFILES) $(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLPPUFILES))
 endif
 else
-INSTALLPPULINKFILES=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 endif
 endif
 
@@ -837,7 +852,7 @@ endif
 
 # Test dir if none specified
 ifndef DESTZIPDIR
-DESTZIPDIR=$(BASEDIR)
+DESTZIPDIR:=$(BASEDIR)
 endif
 
 # Add .zip/.tar.gz extension
@@ -892,9 +907,9 @@ endif
 
 ifdef CLEANPPUFILES
 ifdef PPUFILES
-CLEANPPULINKFILES=$(shell $(PPUFILES) $(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES))
 else
-CLEANPPULINKFILES=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)))
 endif
 endif
 
@@ -911,7 +926,7 @@ endif
 ifdef EXTRACLEANFILES
 	-$(DEL) $(EXTRACLEANFILES)
 endif
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 fpc_cleanall: $(CLEANTARGET)
 ifdef CLEANEXEFILES
@@ -919,7 +934,7 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 #####################################################################
 # Info rules

+ 39 - 24
packages/postgres/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-11-25 23:47
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: all
@@ -65,12 +65,17 @@ endif
 
 # What compiler to use ?
 ifndef FPC
+# Compatibility with old makefiles
+ifdef PP
+export FPC=$(PP)
+else
 ifdef inOS2
 export FPC=ppos2$(EXEEXT)
 else
 export FPC=ppc386$(EXEEXT)
 endif
 endif
+endif
 
 # Target OS
 ifndef OS_TARGET
@@ -193,6 +198,7 @@ endif
 
 # create fcldir,rtldir,unitdir
 ifdef FPCDIR
+override FPCDIR:=$(subst \,/,$(FPCDIR))
 ifneq ($(FPCDIR),.)
 override RTLDIR=$(FPCDIR)/rtl/$(OS_TARGET)
 override FCLDIR=$(FPCDIR)/fcl/$(OS_TARGET)
@@ -322,7 +328,15 @@ ifdef CFGFILE
 override FPCOPT+=@$(CFGFILE)
 endif
 
-override COMPILER=$(FPC) $(FPCOPT)
+# For win32 the options are passed using the environment variable FPCEXTCMD
+ifeq ($(OS_SOURCE),win32)
+override FPCEXTCMD:=$(FPCOPT)
+override FPCOPT:=!FPCEXTCMD
+export FPCEXTCMD
+endif
+
+# Compiler commandline
+override COMPILER:=$(FPC) $(FPCOPT)
 
 #####################################################################
 # Shell tools
@@ -384,11 +398,6 @@ endif
 # Default Tools
 #####################################################################
 
-# file used to check if a package is compiled
-ifndef FPCMAKED
-FPCMAKED=fpcmaked
-endif
-
 # assembler, redefine it if cross compiling
 ifndef AS
 AS=as
@@ -414,7 +423,7 @@ endif
 ifeq (,$(findstring -s ,$(COMPILER)))
 EXECPPAS=
 else
-EXECPPAS=@$(PPAS)
+EXECPPAS:=@$(PPAS)
 endif
 
 # ldconfig to rebuild .so cache
@@ -534,6 +543,7 @@ SMARTEXT=.sl
 STATICLIBEXT=.a
 SHAREDLIBEXT=.so
 PACKAGESUFFIX=
+FPCMADE=fpcmade
 
 # Go32v1
 ifeq ($(OS_TARGET),go32v1)
@@ -544,16 +554,19 @@ SMARTEXT=.sl1
 STATICLIBEXT=.a1
 SHAREDLIBEXT=.so1
 PACKAGESUFFIX=v1
+FPCMADE=fpcmade.v1
 endif
 
 # Go32v2
 ifeq ($(OS_TARGET),go32v2)
 PACKAGESUFFIX=go32
+FPCMADE=fpcmade.dos
 endif
 
 # Linux
 ifeq ($(OS_TARGET),linux)
 PACKAGESUFFIX=linux
+FPCMADE=fpcmade.lnx
 endif
 
 # Win32
@@ -565,6 +578,7 @@ SMARTEXT=.slw
 STATICLIBEXT=.aw
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=win32
+FPCMADE=fpcmade.w32
 endif
 
 # OS/2
@@ -576,6 +590,7 @@ SMARTEXT=.so
 STATICLIBEXT=.ao2
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=os2
+FPCMADE=fpcmade.os2
 endif
 
 # library prefix
@@ -640,7 +655,7 @@ info: fpc_info
 #####################################################################
 
 ifneq ($(wildcard $(RTLDIR)),)
-ifeq ($(wildcard $(RTLDIR)/$(FPCMAKED)),)
+ifeq ($(wildcard $(RTLDIR)/$(FPCMADE)),)
 override COMPILEPACKAGES+=rtl
 rtl_package:
 	$(MAKE) -C $(RTLDIR) all
@@ -669,8 +684,8 @@ fpc_units: $(UNITPPUFILES)
 
 .PHONY: fpc_examples fpc_test
 
-override EXAMPLEFILES=$(addsuffix $(EXEEXT),$(EXAMPLEOBJECTS))
-override EXAMPLEOFILES=$(addsuffix $(OEXT),$(EXAMPLEOBJECTS))
+override EXAMPLEFILES:=$(addsuffix $(EXEEXT),$(EXAMPLEOBJECTS))
+override EXAMPLEOFILES:=$(addsuffix $(OEXT),$(EXAMPLEOBJECTS))
 
 override CLEANEXEFILES+=$(EXAMPLEFILES) $(EXAMPLEOFILES)
 
@@ -684,12 +699,12 @@ fpc_test: examples
 
 .PHONY: fpc_all fpc_debug
 
-$(FPCMAKED):
-	@$(ECHO) Compiled > $(FPCMAKED)
+$(FPCMADE):
+	@$(ECHO) Compiled > $(FPCMADE)
 
 fpc_all: $(addsuffix _package,$(COMPILEPACKAGES)) \
 	 $(addsuffix _component,$(COMPILECOMPONENTS)) \
-	 $(ALLTARGET) $(FPCMAKED)
+	 $(ALLTARGET) $(FPCMADE)
 
 fpc_debug:
 	$(MAKE) all DEBUG=1
@@ -722,7 +737,7 @@ fpc_debug:
 
 # Default sharedlib units are all unit objects
 ifndef SHAREDLIBUNITOBJECTS
-SHAREDLIBUNITOBJECTS=$(UNITOBJECTS)
+SHAREDLIBUNITOBJECTS:=$(UNITOBJECTS)
 endif
 
 fpc_smart:
@@ -752,13 +767,13 @@ endif
 ifdef INSTALLPPUFILES
 ifdef PPUFILES
 ifdef inlinux
-INSTALLPPULINKFILES=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
-INSTALLPPULIBFILES=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
+INSTALLPPULIBFILES:=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
 else
-INSTALLPPULINKFILES=$(shell $(PPUFILES) $(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLPPUFILES))
 endif
 else
-INSTALLPPULINKFILES=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 endif
 endif
 
@@ -832,7 +847,7 @@ endif
 
 # Test dir if none specified
 ifndef DESTZIPDIR
-DESTZIPDIR=$(BASEDIR)
+DESTZIPDIR:=$(BASEDIR)
 endif
 
 # Add .zip/.tar.gz extension
@@ -887,9 +902,9 @@ endif
 
 ifdef CLEANPPUFILES
 ifdef PPUFILES
-CLEANPPULINKFILES=$(shell $(PPUFILES) $(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES))
 else
-CLEANPPULINKFILES=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)))
 endif
 endif
 
@@ -906,7 +921,7 @@ endif
 ifdef EXTRACLEANFILES
 	-$(DEL) $(EXTRACLEANFILES)
 endif
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 fpc_cleanall: $(CLEANTARGET)
 ifdef CLEANEXEFILES
@@ -914,7 +929,7 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 #####################################################################
 # Info rules

+ 39 - 24
packages/svgalib/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-11-25 23:47
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: all
@@ -65,12 +65,17 @@ endif
 
 # What compiler to use ?
 ifndef FPC
+# Compatibility with old makefiles
+ifdef PP
+export FPC=$(PP)
+else
 ifdef inOS2
 export FPC=ppos2$(EXEEXT)
 else
 export FPC=ppc386$(EXEEXT)
 endif
 endif
+endif
 
 # Target OS
 ifndef OS_TARGET
@@ -193,6 +198,7 @@ endif
 
 # create fcldir,rtldir,unitdir
 ifdef FPCDIR
+override FPCDIR:=$(subst \,/,$(FPCDIR))
 ifneq ($(FPCDIR),.)
 override RTLDIR=$(FPCDIR)/rtl/$(OS_TARGET)
 override FCLDIR=$(FPCDIR)/fcl/$(OS_TARGET)
@@ -322,7 +328,15 @@ ifdef CFGFILE
 override FPCOPT+=@$(CFGFILE)
 endif
 
-override COMPILER=$(FPC) $(FPCOPT)
+# For win32 the options are passed using the environment variable FPCEXTCMD
+ifeq ($(OS_SOURCE),win32)
+override FPCEXTCMD:=$(FPCOPT)
+override FPCOPT:=!FPCEXTCMD
+export FPCEXTCMD
+endif
+
+# Compiler commandline
+override COMPILER:=$(FPC) $(FPCOPT)
 
 #####################################################################
 # Shell tools
@@ -384,11 +398,6 @@ endif
 # Default Tools
 #####################################################################
 
-# file used to check if a package is compiled
-ifndef FPCMAKED
-FPCMAKED=fpcmaked
-endif
-
 # assembler, redefine it if cross compiling
 ifndef AS
 AS=as
@@ -414,7 +423,7 @@ endif
 ifeq (,$(findstring -s ,$(COMPILER)))
 EXECPPAS=
 else
-EXECPPAS=@$(PPAS)
+EXECPPAS:=@$(PPAS)
 endif
 
 # ldconfig to rebuild .so cache
@@ -534,6 +543,7 @@ SMARTEXT=.sl
 STATICLIBEXT=.a
 SHAREDLIBEXT=.so
 PACKAGESUFFIX=
+FPCMADE=fpcmade
 
 # Go32v1
 ifeq ($(OS_TARGET),go32v1)
@@ -544,16 +554,19 @@ SMARTEXT=.sl1
 STATICLIBEXT=.a1
 SHAREDLIBEXT=.so1
 PACKAGESUFFIX=v1
+FPCMADE=fpcmade.v1
 endif
 
 # Go32v2
 ifeq ($(OS_TARGET),go32v2)
 PACKAGESUFFIX=go32
+FPCMADE=fpcmade.dos
 endif
 
 # Linux
 ifeq ($(OS_TARGET),linux)
 PACKAGESUFFIX=linux
+FPCMADE=fpcmade.lnx
 endif
 
 # Win32
@@ -565,6 +578,7 @@ SMARTEXT=.slw
 STATICLIBEXT=.aw
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=win32
+FPCMADE=fpcmade.w32
 endif
 
 # OS/2
@@ -576,6 +590,7 @@ SMARTEXT=.so
 STATICLIBEXT=.ao2
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=os2
+FPCMADE=fpcmade.os2
 endif
 
 # library prefix
@@ -640,7 +655,7 @@ info: fpc_info
 #####################################################################
 
 ifneq ($(wildcard $(RTLDIR)),)
-ifeq ($(wildcard $(RTLDIR)/$(FPCMAKED)),)
+ifeq ($(wildcard $(RTLDIR)/$(FPCMADE)),)
 override COMPILEPACKAGES+=rtl
 rtl_package:
 	$(MAKE) -C $(RTLDIR) all
@@ -669,8 +684,8 @@ fpc_units: $(UNITPPUFILES)
 
 .PHONY: fpc_examples fpc_test
 
-override EXAMPLEFILES=$(addsuffix $(EXEEXT),$(EXAMPLEOBJECTS))
-override EXAMPLEOFILES=$(addsuffix $(OEXT),$(EXAMPLEOBJECTS))
+override EXAMPLEFILES:=$(addsuffix $(EXEEXT),$(EXAMPLEOBJECTS))
+override EXAMPLEOFILES:=$(addsuffix $(OEXT),$(EXAMPLEOBJECTS))
 
 override CLEANEXEFILES+=$(EXAMPLEFILES) $(EXAMPLEOFILES)
 
@@ -684,12 +699,12 @@ fpc_test: examples
 
 .PHONY: fpc_all fpc_debug
 
-$(FPCMAKED):
-	@$(ECHO) Compiled > $(FPCMAKED)
+$(FPCMADE):
+	@$(ECHO) Compiled > $(FPCMADE)
 
 fpc_all: $(addsuffix _package,$(COMPILEPACKAGES)) \
 	 $(addsuffix _component,$(COMPILECOMPONENTS)) \
-	 $(ALLTARGET) $(FPCMAKED)
+	 $(ALLTARGET) $(FPCMADE)
 
 fpc_debug:
 	$(MAKE) all DEBUG=1
@@ -722,7 +737,7 @@ fpc_debug:
 
 # Default sharedlib units are all unit objects
 ifndef SHAREDLIBUNITOBJECTS
-SHAREDLIBUNITOBJECTS=$(UNITOBJECTS)
+SHAREDLIBUNITOBJECTS:=$(UNITOBJECTS)
 endif
 
 fpc_smart:
@@ -752,13 +767,13 @@ endif
 ifdef INSTALLPPUFILES
 ifdef PPUFILES
 ifdef inlinux
-INSTALLPPULINKFILES=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
-INSTALLPPULIBFILES=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
+INSTALLPPULIBFILES:=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
 else
-INSTALLPPULINKFILES=$(shell $(PPUFILES) $(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLPPUFILES))
 endif
 else
-INSTALLPPULINKFILES=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 endif
 endif
 
@@ -832,7 +847,7 @@ endif
 
 # Test dir if none specified
 ifndef DESTZIPDIR
-DESTZIPDIR=$(BASEDIR)
+DESTZIPDIR:=$(BASEDIR)
 endif
 
 # Add .zip/.tar.gz extension
@@ -887,9 +902,9 @@ endif
 
 ifdef CLEANPPUFILES
 ifdef PPUFILES
-CLEANPPULINKFILES=$(shell $(PPUFILES) $(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES))
 else
-CLEANPPULINKFILES=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)))
 endif
 endif
 
@@ -906,7 +921,7 @@ endif
 ifdef EXTRACLEANFILES
 	-$(DEL) $(EXTRACLEANFILES)
 endif
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 fpc_cleanall: $(CLEANTARGET)
 ifdef CLEANEXEFILES
@@ -914,7 +929,7 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 #####################################################################
 # Info rules

+ 39 - 24
packages/uncgi/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-11-25 23:47
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: all
@@ -65,12 +65,17 @@ endif
 
 # What compiler to use ?
 ifndef FPC
+# Compatibility with old makefiles
+ifdef PP
+export FPC=$(PP)
+else
 ifdef inOS2
 export FPC=ppos2$(EXEEXT)
 else
 export FPC=ppc386$(EXEEXT)
 endif
 endif
+endif
 
 # Target OS
 ifndef OS_TARGET
@@ -193,6 +198,7 @@ endif
 
 # create fcldir,rtldir,unitdir
 ifdef FPCDIR
+override FPCDIR:=$(subst \,/,$(FPCDIR))
 ifneq ($(FPCDIR),.)
 override RTLDIR=$(FPCDIR)/rtl/$(OS_TARGET)
 override FCLDIR=$(FPCDIR)/fcl/$(OS_TARGET)
@@ -322,7 +328,15 @@ ifdef CFGFILE
 override FPCOPT+=@$(CFGFILE)
 endif
 
-override COMPILER=$(FPC) $(FPCOPT)
+# For win32 the options are passed using the environment variable FPCEXTCMD
+ifeq ($(OS_SOURCE),win32)
+override FPCEXTCMD:=$(FPCOPT)
+override FPCOPT:=!FPCEXTCMD
+export FPCEXTCMD
+endif
+
+# Compiler commandline
+override COMPILER:=$(FPC) $(FPCOPT)
 
 #####################################################################
 # Shell tools
@@ -384,11 +398,6 @@ endif
 # Default Tools
 #####################################################################
 
-# file used to check if a package is compiled
-ifndef FPCMAKED
-FPCMAKED=fpcmaked
-endif
-
 # assembler, redefine it if cross compiling
 ifndef AS
 AS=as
@@ -414,7 +423,7 @@ endif
 ifeq (,$(findstring -s ,$(COMPILER)))
 EXECPPAS=
 else
-EXECPPAS=@$(PPAS)
+EXECPPAS:=@$(PPAS)
 endif
 
 # ldconfig to rebuild .so cache
@@ -534,6 +543,7 @@ SMARTEXT=.sl
 STATICLIBEXT=.a
 SHAREDLIBEXT=.so
 PACKAGESUFFIX=
+FPCMADE=fpcmade
 
 # Go32v1
 ifeq ($(OS_TARGET),go32v1)
@@ -544,16 +554,19 @@ SMARTEXT=.sl1
 STATICLIBEXT=.a1
 SHAREDLIBEXT=.so1
 PACKAGESUFFIX=v1
+FPCMADE=fpcmade.v1
 endif
 
 # Go32v2
 ifeq ($(OS_TARGET),go32v2)
 PACKAGESUFFIX=go32
+FPCMADE=fpcmade.dos
 endif
 
 # Linux
 ifeq ($(OS_TARGET),linux)
 PACKAGESUFFIX=linux
+FPCMADE=fpcmade.lnx
 endif
 
 # Win32
@@ -565,6 +578,7 @@ SMARTEXT=.slw
 STATICLIBEXT=.aw
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=win32
+FPCMADE=fpcmade.w32
 endif
 
 # OS/2
@@ -576,6 +590,7 @@ SMARTEXT=.so
 STATICLIBEXT=.ao2
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=os2
+FPCMADE=fpcmade.os2
 endif
 
 # library prefix
@@ -640,7 +655,7 @@ info: fpc_info
 #####################################################################
 
 ifneq ($(wildcard $(RTLDIR)),)
-ifeq ($(wildcard $(RTLDIR)/$(FPCMAKED)),)
+ifeq ($(wildcard $(RTLDIR)/$(FPCMADE)),)
 override COMPILEPACKAGES+=rtl
 rtl_package:
 	$(MAKE) -C $(RTLDIR) all
@@ -669,8 +684,8 @@ fpc_units: $(UNITPPUFILES)
 
 .PHONY: fpc_examples fpc_test
 
-override EXAMPLEFILES=$(addsuffix $(EXEEXT),$(EXAMPLEOBJECTS))
-override EXAMPLEOFILES=$(addsuffix $(OEXT),$(EXAMPLEOBJECTS))
+override EXAMPLEFILES:=$(addsuffix $(EXEEXT),$(EXAMPLEOBJECTS))
+override EXAMPLEOFILES:=$(addsuffix $(OEXT),$(EXAMPLEOBJECTS))
 
 override CLEANEXEFILES+=$(EXAMPLEFILES) $(EXAMPLEOFILES)
 
@@ -684,12 +699,12 @@ fpc_test: examples
 
 .PHONY: fpc_all fpc_debug
 
-$(FPCMAKED):
-	@$(ECHO) Compiled > $(FPCMAKED)
+$(FPCMADE):
+	@$(ECHO) Compiled > $(FPCMADE)
 
 fpc_all: $(addsuffix _package,$(COMPILEPACKAGES)) \
 	 $(addsuffix _component,$(COMPILECOMPONENTS)) \
-	 $(ALLTARGET) $(FPCMAKED)
+	 $(ALLTARGET) $(FPCMADE)
 
 fpc_debug:
 	$(MAKE) all DEBUG=1
@@ -722,7 +737,7 @@ fpc_debug:
 
 # Default sharedlib units are all unit objects
 ifndef SHAREDLIBUNITOBJECTS
-SHAREDLIBUNITOBJECTS=$(UNITOBJECTS)
+SHAREDLIBUNITOBJECTS:=$(UNITOBJECTS)
 endif
 
 fpc_smart:
@@ -752,13 +767,13 @@ endif
 ifdef INSTALLPPUFILES
 ifdef PPUFILES
 ifdef inlinux
-INSTALLPPULINKFILES=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
-INSTALLPPULIBFILES=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
+INSTALLPPULIBFILES:=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
 else
-INSTALLPPULINKFILES=$(shell $(PPUFILES) $(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLPPUFILES))
 endif
 else
-INSTALLPPULINKFILES=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 endif
 endif
 
@@ -832,7 +847,7 @@ endif
 
 # Test dir if none specified
 ifndef DESTZIPDIR
-DESTZIPDIR=$(BASEDIR)
+DESTZIPDIR:=$(BASEDIR)
 endif
 
 # Add .zip/.tar.gz extension
@@ -887,9 +902,9 @@ endif
 
 ifdef CLEANPPUFILES
 ifdef PPUFILES
-CLEANPPULINKFILES=$(shell $(PPUFILES) $(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES))
 else
-CLEANPPULINKFILES=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)))
 endif
 endif
 
@@ -906,7 +921,7 @@ endif
 ifdef EXTRACLEANFILES
 	-$(DEL) $(EXTRACLEANFILES)
 endif
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 fpc_cleanall: $(CLEANTARGET)
 ifdef CLEANEXEFILES
@@ -914,7 +929,7 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 #####################################################################
 # Info rules

+ 39 - 24
packages/utmp/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-11-25 23:47
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: all
@@ -65,12 +65,17 @@ endif
 
 # What compiler to use ?
 ifndef FPC
+# Compatibility with old makefiles
+ifdef PP
+export FPC=$(PP)
+else
 ifdef inOS2
 export FPC=ppos2$(EXEEXT)
 else
 export FPC=ppc386$(EXEEXT)
 endif
 endif
+endif
 
 # Target OS
 ifndef OS_TARGET
@@ -193,6 +198,7 @@ endif
 
 # create fcldir,rtldir,unitdir
 ifdef FPCDIR
+override FPCDIR:=$(subst \,/,$(FPCDIR))
 ifneq ($(FPCDIR),.)
 override RTLDIR=$(FPCDIR)/rtl/$(OS_TARGET)
 override FCLDIR=$(FPCDIR)/fcl/$(OS_TARGET)
@@ -322,7 +328,15 @@ ifdef CFGFILE
 override FPCOPT+=@$(CFGFILE)
 endif
 
-override COMPILER=$(FPC) $(FPCOPT)
+# For win32 the options are passed using the environment variable FPCEXTCMD
+ifeq ($(OS_SOURCE),win32)
+override FPCEXTCMD:=$(FPCOPT)
+override FPCOPT:=!FPCEXTCMD
+export FPCEXTCMD
+endif
+
+# Compiler commandline
+override COMPILER:=$(FPC) $(FPCOPT)
 
 #####################################################################
 # Shell tools
@@ -384,11 +398,6 @@ endif
 # Default Tools
 #####################################################################
 
-# file used to check if a package is compiled
-ifndef FPCMAKED
-FPCMAKED=fpcmaked
-endif
-
 # assembler, redefine it if cross compiling
 ifndef AS
 AS=as
@@ -414,7 +423,7 @@ endif
 ifeq (,$(findstring -s ,$(COMPILER)))
 EXECPPAS=
 else
-EXECPPAS=@$(PPAS)
+EXECPPAS:=@$(PPAS)
 endif
 
 # ldconfig to rebuild .so cache
@@ -534,6 +543,7 @@ SMARTEXT=.sl
 STATICLIBEXT=.a
 SHAREDLIBEXT=.so
 PACKAGESUFFIX=
+FPCMADE=fpcmade
 
 # Go32v1
 ifeq ($(OS_TARGET),go32v1)
@@ -544,16 +554,19 @@ SMARTEXT=.sl1
 STATICLIBEXT=.a1
 SHAREDLIBEXT=.so1
 PACKAGESUFFIX=v1
+FPCMADE=fpcmade.v1
 endif
 
 # Go32v2
 ifeq ($(OS_TARGET),go32v2)
 PACKAGESUFFIX=go32
+FPCMADE=fpcmade.dos
 endif
 
 # Linux
 ifeq ($(OS_TARGET),linux)
 PACKAGESUFFIX=linux
+FPCMADE=fpcmade.lnx
 endif
 
 # Win32
@@ -565,6 +578,7 @@ SMARTEXT=.slw
 STATICLIBEXT=.aw
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=win32
+FPCMADE=fpcmade.w32
 endif
 
 # OS/2
@@ -576,6 +590,7 @@ SMARTEXT=.so
 STATICLIBEXT=.ao2
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=os2
+FPCMADE=fpcmade.os2
 endif
 
 # library prefix
@@ -640,7 +655,7 @@ info: fpc_info
 #####################################################################
 
 ifneq ($(wildcard $(RTLDIR)),)
-ifeq ($(wildcard $(RTLDIR)/$(FPCMAKED)),)
+ifeq ($(wildcard $(RTLDIR)/$(FPCMADE)),)
 override COMPILEPACKAGES+=rtl
 rtl_package:
 	$(MAKE) -C $(RTLDIR) all
@@ -669,8 +684,8 @@ fpc_units: $(UNITPPUFILES)
 
 .PHONY: fpc_examples fpc_test
 
-override EXAMPLEFILES=$(addsuffix $(EXEEXT),$(EXAMPLEOBJECTS))
-override EXAMPLEOFILES=$(addsuffix $(OEXT),$(EXAMPLEOBJECTS))
+override EXAMPLEFILES:=$(addsuffix $(EXEEXT),$(EXAMPLEOBJECTS))
+override EXAMPLEOFILES:=$(addsuffix $(OEXT),$(EXAMPLEOBJECTS))
 
 override CLEANEXEFILES+=$(EXAMPLEFILES) $(EXAMPLEOFILES)
 
@@ -684,12 +699,12 @@ fpc_test: examples
 
 .PHONY: fpc_all fpc_debug
 
-$(FPCMAKED):
-	@$(ECHO) Compiled > $(FPCMAKED)
+$(FPCMADE):
+	@$(ECHO) Compiled > $(FPCMADE)
 
 fpc_all: $(addsuffix _package,$(COMPILEPACKAGES)) \
 	 $(addsuffix _component,$(COMPILECOMPONENTS)) \
-	 $(ALLTARGET) $(FPCMAKED)
+	 $(ALLTARGET) $(FPCMADE)
 
 fpc_debug:
 	$(MAKE) all DEBUG=1
@@ -722,7 +737,7 @@ fpc_debug:
 
 # Default sharedlib units are all unit objects
 ifndef SHAREDLIBUNITOBJECTS
-SHAREDLIBUNITOBJECTS=$(UNITOBJECTS)
+SHAREDLIBUNITOBJECTS:=$(UNITOBJECTS)
 endif
 
 fpc_smart:
@@ -752,13 +767,13 @@ endif
 ifdef INSTALLPPUFILES
 ifdef PPUFILES
 ifdef inlinux
-INSTALLPPULINKFILES=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
-INSTALLPPULIBFILES=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
+INSTALLPPULIBFILES:=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
 else
-INSTALLPPULINKFILES=$(shell $(PPUFILES) $(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLPPUFILES))
 endif
 else
-INSTALLPPULINKFILES=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 endif
 endif
 
@@ -832,7 +847,7 @@ endif
 
 # Test dir if none specified
 ifndef DESTZIPDIR
-DESTZIPDIR=$(BASEDIR)
+DESTZIPDIR:=$(BASEDIR)
 endif
 
 # Add .zip/.tar.gz extension
@@ -887,9 +902,9 @@ endif
 
 ifdef CLEANPPUFILES
 ifdef PPUFILES
-CLEANPPULINKFILES=$(shell $(PPUFILES) $(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES))
 else
-CLEANPPULINKFILES=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)))
 endif
 endif
 
@@ -906,7 +921,7 @@ endif
 ifdef EXTRACLEANFILES
 	-$(DEL) $(EXTRACLEANFILES)
 endif
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 fpc_cleanall: $(CLEANTARGET)
 ifdef CLEANEXEFILES
@@ -914,7 +929,7 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 #####################################################################
 # Info rules

+ 2 - 2
rtl/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-12-13 14:21
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: all
@@ -204,7 +204,7 @@ info: $(OS_TARGET)_info
 #####################################################################
 
 ifneq ($(wildcard $(RTLDIR)),)
-ifeq ($(wildcard $(RTLDIR)/$(FPCMAKED)),)
+ifeq ($(wildcard $(RTLDIR)/$(FPCMADE)),)
 override COMPILEPACKAGES+=rtl
 rtl_package:
 	$(MAKE) -C $(RTLDIR) all

+ 37 - 22
rtl/go32v1/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-11-25 23:51
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: all
@@ -72,12 +72,17 @@ override CPU_TARGET:=i386
 
 # What compiler to use ?
 ifndef FPC
+# Compatibility with old makefiles
+ifdef PP
+export FPC=$(PP)
+else
 ifdef inOS2
 export FPC=ppos2$(EXEEXT)
 else
 export FPC=ppc386$(EXEEXT)
 endif
 endif
+endif
 
 # Target OS
 ifndef OS_TARGET
@@ -238,6 +243,7 @@ endif
 
 # create fcldir,rtldir,unitdir
 ifdef FPCDIR
+override FPCDIR:=$(subst \,/,$(FPCDIR))
 ifneq ($(FPCDIR),.)
 override RTLDIR=$(FPCDIR)/rtl/$(OS_TARGET)
 override FCLDIR=$(FPCDIR)/fcl/$(OS_TARGET)
@@ -377,7 +383,15 @@ ifdef CFGFILE
 override FPCOPT+=@$(CFGFILE)
 endif
 
-override COMPILER=$(FPC) $(FPCOPT)
+# For win32 the options are passed using the environment variable FPCEXTCMD
+ifeq ($(OS_SOURCE),win32)
+override FPCEXTCMD:=$(FPCOPT)
+override FPCOPT:=!FPCEXTCMD
+export FPCEXTCMD
+endif
+
+# Compiler commandline
+override COMPILER:=$(FPC) $(FPCOPT)
 
 #####################################################################
 # Shell tools
@@ -439,11 +453,6 @@ endif
 # Default Tools
 #####################################################################
 
-# file used to check if a package is compiled
-ifndef FPCMAKED
-FPCMAKED=fpcmaked
-endif
-
 # assembler, redefine it if cross compiling
 ifndef AS
 AS=as
@@ -469,7 +478,7 @@ endif
 ifeq (,$(findstring -s ,$(COMPILER)))
 EXECPPAS=
 else
-EXECPPAS=@$(PPAS)
+EXECPPAS:=@$(PPAS)
 endif
 
 # ldconfig to rebuild .so cache
@@ -589,6 +598,7 @@ SMARTEXT=.sl
 STATICLIBEXT=.a
 SHAREDLIBEXT=.so
 PACKAGESUFFIX=
+FPCMADE=fpcmade
 
 # Go32v1
 ifeq ($(OS_TARGET),go32v1)
@@ -599,16 +609,19 @@ SMARTEXT=.sl1
 STATICLIBEXT=.a1
 SHAREDLIBEXT=.so1
 PACKAGESUFFIX=v1
+FPCMADE=fpcmade.v1
 endif
 
 # Go32v2
 ifeq ($(OS_TARGET),go32v2)
 PACKAGESUFFIX=go32
+FPCMADE=fpcmade.dos
 endif
 
 # Linux
 ifeq ($(OS_TARGET),linux)
 PACKAGESUFFIX=linux
+FPCMADE=fpcmade.lnx
 endif
 
 # Win32
@@ -620,6 +633,7 @@ SMARTEXT=.slw
 STATICLIBEXT=.aw
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=win32
+FPCMADE=fpcmade.w32
 endif
 
 # OS/2
@@ -631,6 +645,7 @@ SMARTEXT=.so
 STATICLIBEXT=.ao2
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=os2
+FPCMADE=fpcmade.os2
 endif
 
 # library prefix
@@ -705,7 +720,7 @@ override CLEANTARGET+=fpc_loaders_clean
 override SHOWINSTALLTARGET+=fpc_loaders_showinstall
 override INSTALLTARGET+=fpc_loaders_install
 
-override LOADEROFILES=$(addsuffix $(OEXT),$(LOADEROBJECTS))
+override LOADEROFILES:=$(addsuffix $(OEXT),$(LOADEROBJECTS))
 
 fpc_loaders: $(LOADEROFILES)
 
@@ -739,12 +754,12 @@ fpc_units: $(UNITPPUFILES)
 
 .PHONY: fpc_all fpc_debug
 
-$(FPCMAKED):
-	@$(ECHO) Compiled > $(FPCMAKED)
+$(FPCMADE):
+	@$(ECHO) Compiled > $(FPCMADE)
 
 fpc_all: $(addsuffix _package,$(COMPILEPACKAGES)) \
 	 $(addsuffix _component,$(COMPILECOMPONENTS)) \
-	 $(ALLTARGET) $(FPCMAKED)
+	 $(ALLTARGET) $(FPCMADE)
 
 fpc_debug:
 	$(MAKE) all DEBUG=1
@@ -777,7 +792,7 @@ fpc_debug:
 
 # Default sharedlib units are all unit objects
 ifndef SHAREDLIBUNITOBJECTS
-SHAREDLIBUNITOBJECTS=$(UNITOBJECTS)
+SHAREDLIBUNITOBJECTS:=$(UNITOBJECTS)
 endif
 
 fpc_smart:
@@ -807,13 +822,13 @@ endif
 ifdef INSTALLPPUFILES
 ifdef PPUFILES
 ifdef inlinux
-INSTALLPPULINKFILES=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
-INSTALLPPULIBFILES=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
+INSTALLPPULIBFILES:=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
 else
-INSTALLPPULINKFILES=$(shell $(PPUFILES) $(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLPPUFILES))
 endif
 else
-INSTALLPPULINKFILES=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 endif
 endif
 
@@ -887,7 +902,7 @@ endif
 
 # Test dir if none specified
 ifndef DESTZIPDIR
-DESTZIPDIR=$(BASEDIR)
+DESTZIPDIR:=$(BASEDIR)
 endif
 
 # Add .zip/.tar.gz extension
@@ -942,9 +957,9 @@ endif
 
 ifdef CLEANPPUFILES
 ifdef PPUFILES
-CLEANPPULINKFILES=$(shell $(PPUFILES) $(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES))
 else
-CLEANPPULINKFILES=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)))
 endif
 endif
 
@@ -961,7 +976,7 @@ endif
 ifdef EXTRACLEANFILES
 	-$(DEL) $(EXTRACLEANFILES)
 endif
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 fpc_cleanall: $(CLEANTARGET)
 ifdef CLEANEXEFILES
@@ -969,7 +984,7 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 #####################################################################
 # Info rules

+ 37 - 22
rtl/go32v2/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-12-13 23:59
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: all
@@ -72,12 +72,17 @@ override CPU_TARGET:=i386
 
 # What compiler to use ?
 ifndef FPC
+# Compatibility with old makefiles
+ifdef PP
+export FPC=$(PP)
+else
 ifdef inOS2
 export FPC=ppos2$(EXEEXT)
 else
 export FPC=ppc386$(EXEEXT)
 endif
 endif
+endif
 
 # Target OS
 ifndef OS_TARGET
@@ -238,6 +243,7 @@ endif
 
 # create fcldir,rtldir,unitdir
 ifdef FPCDIR
+override FPCDIR:=$(subst \,/,$(FPCDIR))
 ifneq ($(FPCDIR),.)
 override RTLDIR=$(FPCDIR)/rtl/$(OS_TARGET)
 override FCLDIR=$(FPCDIR)/fcl/$(OS_TARGET)
@@ -377,7 +383,15 @@ ifdef CFGFILE
 override FPCOPT+=@$(CFGFILE)
 endif
 
-override COMPILER=$(FPC) $(FPCOPT)
+# For win32 the options are passed using the environment variable FPCEXTCMD
+ifeq ($(OS_SOURCE),win32)
+override FPCEXTCMD:=$(FPCOPT)
+override FPCOPT:=!FPCEXTCMD
+export FPCEXTCMD
+endif
+
+# Compiler commandline
+override COMPILER:=$(FPC) $(FPCOPT)
 
 #####################################################################
 # Shell tools
@@ -439,11 +453,6 @@ endif
 # Default Tools
 #####################################################################
 
-# file used to check if a package is compiled
-ifndef FPCMAKED
-FPCMAKED=fpcmaked
-endif
-
 # assembler, redefine it if cross compiling
 ifndef AS
 AS=as
@@ -469,7 +478,7 @@ endif
 ifeq (,$(findstring -s ,$(COMPILER)))
 EXECPPAS=
 else
-EXECPPAS=@$(PPAS)
+EXECPPAS:=@$(PPAS)
 endif
 
 # ldconfig to rebuild .so cache
@@ -589,6 +598,7 @@ SMARTEXT=.sl
 STATICLIBEXT=.a
 SHAREDLIBEXT=.so
 PACKAGESUFFIX=
+FPCMADE=fpcmade
 
 # Go32v1
 ifeq ($(OS_TARGET),go32v1)
@@ -599,16 +609,19 @@ SMARTEXT=.sl1
 STATICLIBEXT=.a1
 SHAREDLIBEXT=.so1
 PACKAGESUFFIX=v1
+FPCMADE=fpcmade.v1
 endif
 
 # Go32v2
 ifeq ($(OS_TARGET),go32v2)
 PACKAGESUFFIX=go32
+FPCMADE=fpcmade.dos
 endif
 
 # Linux
 ifeq ($(OS_TARGET),linux)
 PACKAGESUFFIX=linux
+FPCMADE=fpcmade.lnx
 endif
 
 # Win32
@@ -620,6 +633,7 @@ SMARTEXT=.slw
 STATICLIBEXT=.aw
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=win32
+FPCMADE=fpcmade.w32
 endif
 
 # OS/2
@@ -631,6 +645,7 @@ SMARTEXT=.so
 STATICLIBEXT=.ao2
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=os2
+FPCMADE=fpcmade.os2
 endif
 
 # library prefix
@@ -705,7 +720,7 @@ override CLEANTARGET+=fpc_loaders_clean
 override SHOWINSTALLTARGET+=fpc_loaders_showinstall
 override INSTALLTARGET+=fpc_loaders_install
 
-override LOADEROFILES=$(addsuffix $(OEXT),$(LOADEROBJECTS))
+override LOADEROFILES:=$(addsuffix $(OEXT),$(LOADEROBJECTS))
 
 fpc_loaders: $(LOADEROFILES)
 
@@ -739,12 +754,12 @@ fpc_units: $(UNITPPUFILES)
 
 .PHONY: fpc_all fpc_debug
 
-$(FPCMAKED):
-	@$(ECHO) Compiled > $(FPCMAKED)
+$(FPCMADE):
+	@$(ECHO) Compiled > $(FPCMADE)
 
 fpc_all: $(addsuffix _package,$(COMPILEPACKAGES)) \
 	 $(addsuffix _component,$(COMPILECOMPONENTS)) \
-	 $(ALLTARGET) $(FPCMAKED)
+	 $(ALLTARGET) $(FPCMADE)
 
 fpc_debug:
 	$(MAKE) all DEBUG=1
@@ -777,7 +792,7 @@ fpc_debug:
 
 # Default sharedlib units are all unit objects
 ifndef SHAREDLIBUNITOBJECTS
-SHAREDLIBUNITOBJECTS=$(UNITOBJECTS)
+SHAREDLIBUNITOBJECTS:=$(UNITOBJECTS)
 endif
 
 fpc_smart:
@@ -807,13 +822,13 @@ endif
 ifdef INSTALLPPUFILES
 ifdef PPUFILES
 ifdef inlinux
-INSTALLPPULINKFILES=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
-INSTALLPPULIBFILES=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
+INSTALLPPULIBFILES:=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
 else
-INSTALLPPULINKFILES=$(shell $(PPUFILES) $(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLPPUFILES))
 endif
 else
-INSTALLPPULINKFILES=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 endif
 endif
 
@@ -887,7 +902,7 @@ endif
 
 # Test dir if none specified
 ifndef DESTZIPDIR
-DESTZIPDIR=$(BASEDIR)
+DESTZIPDIR:=$(BASEDIR)
 endif
 
 # Add .zip/.tar.gz extension
@@ -942,9 +957,9 @@ endif
 
 ifdef CLEANPPUFILES
 ifdef PPUFILES
-CLEANPPULINKFILES=$(shell $(PPUFILES) $(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES))
 else
-CLEANPPULINKFILES=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)))
 endif
 endif
 
@@ -961,7 +976,7 @@ endif
 ifdef EXTRACLEANFILES
 	-$(DEL) $(EXTRACLEANFILES)
 endif
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 fpc_cleanall: $(CLEANTARGET)
 ifdef CLEANEXEFILES
@@ -969,7 +984,7 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 #####################################################################
 # Info rules

+ 14 - 13
rtl/linux/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-12-06 18:33
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: all
@@ -464,11 +464,6 @@ endif
 # Default Tools
 #####################################################################
 
-# file used to check if a package is compiled
-ifndef FPCMAKED
-FPCMAKED=fpcmaked
-endif
-
 # assembler, redefine it if cross compiling
 ifndef AS
 AS=as
@@ -614,6 +609,7 @@ SMARTEXT=.sl
 STATICLIBEXT=.a
 SHAREDLIBEXT=.so
 PACKAGESUFFIX=
+FPCMADE=fpcmade
 
 # Go32v1
 ifeq ($(OS_TARGET),go32v1)
@@ -624,16 +620,19 @@ SMARTEXT=.sl1
 STATICLIBEXT=.a1
 SHAREDLIBEXT=.so1
 PACKAGESUFFIX=v1
+FPCMADE=fpcmade.v1
 endif
 
 # Go32v2
 ifeq ($(OS_TARGET),go32v2)
 PACKAGESUFFIX=go32
+FPCMADE=fpcmade.dos
 endif
 
 # Linux
 ifeq ($(OS_TARGET),linux)
 PACKAGESUFFIX=linux
+FPCMADE=fpcmade.lnx
 endif
 
 # Win32
@@ -645,6 +644,7 @@ SMARTEXT=.slw
 STATICLIBEXT=.aw
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=win32
+FPCMADE=fpcmade.w32
 endif
 
 # OS/2
@@ -656,6 +656,7 @@ SMARTEXT=.so
 STATICLIBEXT=.ao2
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=os2
+FPCMADE=fpcmade.os2
 endif
 
 # library prefix
@@ -764,12 +765,12 @@ fpc_units: $(UNITPPUFILES)
 
 .PHONY: fpc_all fpc_debug
 
-$(FPCMAKED):
-	@$(ECHO) Compiled > $(FPCMAKED)
+$(FPCMADE):
+	@$(ECHO) Compiled > $(FPCMADE)
 
 fpc_all: $(addsuffix _package,$(COMPILEPACKAGES)) \
 	 $(addsuffix _component,$(COMPILECOMPONENTS)) \
-	 $(ALLTARGET) $(FPCMAKED)
+	 $(ALLTARGET) $(FPCMADE)
 
 fpc_debug:
 	$(MAKE) all DEBUG=1
@@ -838,7 +839,7 @@ else
 INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLPPUFILES))
 endif
 else
-INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 endif
 endif
 
@@ -969,7 +970,7 @@ ifdef CLEANPPUFILES
 ifdef PPUFILES
 CLEANPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES))
 else
-CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)))
 endif
 endif
 
@@ -986,7 +987,7 @@ endif
 ifdef EXTRACLEANFILES
 	-$(DEL) $(EXTRACLEANFILES)
 endif
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 fpc_cleanall: $(CLEANTARGET)
 ifdef CLEANEXEFILES
@@ -994,7 +995,7 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 #####################################################################
 # Info rules

+ 14 - 13
rtl/os2/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-12-06 18:33
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: all
@@ -453,11 +453,6 @@ endif
 # Default Tools
 #####################################################################
 
-# file used to check if a package is compiled
-ifndef FPCMAKED
-FPCMAKED=fpcmaked
-endif
-
 # assembler, redefine it if cross compiling
 ifndef AS
 AS=as
@@ -603,6 +598,7 @@ SMARTEXT=.sl
 STATICLIBEXT=.a
 SHAREDLIBEXT=.so
 PACKAGESUFFIX=
+FPCMADE=fpcmade
 
 # Go32v1
 ifeq ($(OS_TARGET),go32v1)
@@ -613,16 +609,19 @@ SMARTEXT=.sl1
 STATICLIBEXT=.a1
 SHAREDLIBEXT=.so1
 PACKAGESUFFIX=v1
+FPCMADE=fpcmade.v1
 endif
 
 # Go32v2
 ifeq ($(OS_TARGET),go32v2)
 PACKAGESUFFIX=go32
+FPCMADE=fpcmade.dos
 endif
 
 # Linux
 ifeq ($(OS_TARGET),linux)
 PACKAGESUFFIX=linux
+FPCMADE=fpcmade.lnx
 endif
 
 # Win32
@@ -634,6 +633,7 @@ SMARTEXT=.slw
 STATICLIBEXT=.aw
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=win32
+FPCMADE=fpcmade.w32
 endif
 
 # OS/2
@@ -645,6 +645,7 @@ SMARTEXT=.so
 STATICLIBEXT=.ao2
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=os2
+FPCMADE=fpcmade.os2
 endif
 
 # library prefix
@@ -753,12 +754,12 @@ fpc_units: $(UNITPPUFILES)
 
 .PHONY: fpc_all fpc_debug
 
-$(FPCMAKED):
-	@$(ECHO) Compiled > $(FPCMAKED)
+$(FPCMADE):
+	@$(ECHO) Compiled > $(FPCMADE)
 
 fpc_all: $(addsuffix _package,$(COMPILEPACKAGES)) \
 	 $(addsuffix _component,$(COMPILECOMPONENTS)) \
-	 $(ALLTARGET) $(FPCMAKED)
+	 $(ALLTARGET) $(FPCMADE)
 
 fpc_debug:
 	$(MAKE) all DEBUG=1
@@ -827,7 +828,7 @@ else
 INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLPPUFILES))
 endif
 else
-INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 endif
 endif
 
@@ -958,7 +959,7 @@ ifdef CLEANPPUFILES
 ifdef PPUFILES
 CLEANPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES))
 else
-CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)))
 endif
 endif
 
@@ -975,7 +976,7 @@ endif
 ifdef EXTRACLEANFILES
 	-$(DEL) $(EXTRACLEANFILES)
 endif
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 fpc_cleanall: $(CLEANTARGET)
 ifdef CLEANEXEFILES
@@ -983,7 +984,7 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 #####################################################################
 # Info rules

+ 14 - 13
rtl/win32/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-12-06 18:33
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: all
@@ -458,11 +458,6 @@ endif
 # Default Tools
 #####################################################################
 
-# file used to check if a package is compiled
-ifndef FPCMAKED
-FPCMAKED=fpcmaked
-endif
-
 # assembler, redefine it if cross compiling
 ifndef AS
 AS=as
@@ -608,6 +603,7 @@ SMARTEXT=.sl
 STATICLIBEXT=.a
 SHAREDLIBEXT=.so
 PACKAGESUFFIX=
+FPCMADE=fpcmade
 
 # Go32v1
 ifeq ($(OS_TARGET),go32v1)
@@ -618,16 +614,19 @@ SMARTEXT=.sl1
 STATICLIBEXT=.a1
 SHAREDLIBEXT=.so1
 PACKAGESUFFIX=v1
+FPCMADE=fpcmade.v1
 endif
 
 # Go32v2
 ifeq ($(OS_TARGET),go32v2)
 PACKAGESUFFIX=go32
+FPCMADE=fpcmade.dos
 endif
 
 # Linux
 ifeq ($(OS_TARGET),linux)
 PACKAGESUFFIX=linux
+FPCMADE=fpcmade.lnx
 endif
 
 # Win32
@@ -639,6 +638,7 @@ SMARTEXT=.slw
 STATICLIBEXT=.aw
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=win32
+FPCMADE=fpcmade.w32
 endif
 
 # OS/2
@@ -650,6 +650,7 @@ SMARTEXT=.so
 STATICLIBEXT=.ao2
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=os2
+FPCMADE=fpcmade.os2
 endif
 
 # library prefix
@@ -758,12 +759,12 @@ fpc_units: $(UNITPPUFILES)
 
 .PHONY: fpc_all fpc_debug
 
-$(FPCMAKED):
-	@$(ECHO) Compiled > $(FPCMAKED)
+$(FPCMADE):
+	@$(ECHO) Compiled > $(FPCMADE)
 
 fpc_all: $(addsuffix _package,$(COMPILEPACKAGES)) \
 	 $(addsuffix _component,$(COMPILECOMPONENTS)) \
-	 $(ALLTARGET) $(FPCMAKED)
+	 $(ALLTARGET) $(FPCMADE)
 
 fpc_debug:
 	$(MAKE) all DEBUG=1
@@ -832,7 +833,7 @@ else
 INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLPPUFILES))
 endif
 else
-INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 endif
 endif
 
@@ -963,7 +964,7 @@ ifdef CLEANPPUFILES
 ifdef PPUFILES
 CLEANPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES))
 else
-CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)))
 endif
 endif
 
@@ -980,7 +981,7 @@ endif
 ifdef EXTRACLEANFILES
 	-$(DEL) $(EXTRACLEANFILES)
 endif
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 fpc_cleanall: $(CLEANTARGET)
 ifdef CLEANEXEFILES
@@ -988,7 +989,7 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 #####################################################################
 # Info rules

+ 8 - 2
tests/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-12-16 16:01
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: info
@@ -176,6 +176,7 @@ SMARTEXT=.sl
 STATICLIBEXT=.a
 SHAREDLIBEXT=.so
 PACKAGESUFFIX=
+FPCMADE=fpcmade
 
 # Go32v1
 ifeq ($(OS_TARGET),go32v1)
@@ -186,16 +187,19 @@ SMARTEXT=.sl1
 STATICLIBEXT=.a1
 SHAREDLIBEXT=.so1
 PACKAGESUFFIX=v1
+FPCMADE=fpcmade.v1
 endif
 
 # Go32v2
 ifeq ($(OS_TARGET),go32v2)
 PACKAGESUFFIX=go32
+FPCMADE=fpcmade.dos
 endif
 
 # Linux
 ifeq ($(OS_TARGET),linux)
 PACKAGESUFFIX=linux
+FPCMADE=fpcmade.lnx
 endif
 
 # Win32
@@ -207,6 +211,7 @@ SMARTEXT=.slw
 STATICLIBEXT=.aw
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=win32
+FPCMADE=fpcmade.w32
 endif
 
 # OS/2
@@ -218,6 +223,7 @@ SMARTEXT=.so
 STATICLIBEXT=.ao2
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=os2
+FPCMADE=fpcmade.os2
 endif
 
 # library prefix
@@ -252,7 +258,7 @@ endif
 #####################################################################
 
 ifneq ($(wildcard $(RTLDIR)),)
-ifeq ($(wildcard $(RTLDIR)/$(FPCMAKED)),)
+ifeq ($(wildcard $(RTLDIR)/$(FPCMADE)),)
 override COMPILEPACKAGES+=rtl
 rtl_package:
 	$(MAKE) -C $(RTLDIR) all

+ 38 - 23
utils/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-12-01 14:14
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: all
@@ -65,12 +65,17 @@ endif
 
 # What compiler to use ?
 ifndef FPC
+# Compatibility with old makefiles
+ifdef PP
+export FPC=$(PP)
+else
 ifdef inOS2
 export FPC=ppos2$(EXEEXT)
 else
 export FPC=ppc386$(EXEEXT)
 endif
 endif
+endif
 
 # Target OS
 ifndef OS_TARGET
@@ -198,6 +203,7 @@ endif
 
 # create fcldir,rtldir,unitdir
 ifdef FPCDIR
+override FPCDIR:=$(subst \,/,$(FPCDIR))
 ifneq ($(FPCDIR),.)
 override RTLDIR=$(FPCDIR)/rtl/$(OS_TARGET)
 override FCLDIR=$(FPCDIR)/fcl/$(OS_TARGET)
@@ -336,7 +342,15 @@ ifdef CFGFILE
 override FPCOPT+=@$(CFGFILE)
 endif
 
-override COMPILER=$(FPC) $(FPCOPT)
+# For win32 the options are passed using the environment variable FPCEXTCMD
+ifeq ($(OS_SOURCE),win32)
+override FPCEXTCMD:=$(FPCOPT)
+override FPCOPT:=!FPCEXTCMD
+export FPCEXTCMD
+endif
+
+# Compiler commandline
+override COMPILER:=$(FPC) $(FPCOPT)
 
 #####################################################################
 # Shell tools
@@ -398,11 +412,6 @@ endif
 # Default Tools
 #####################################################################
 
-# file used to check if a package is compiled
-ifndef FPCMAKED
-FPCMAKED=fpcmaked
-endif
-
 # assembler, redefine it if cross compiling
 ifndef AS
 AS=as
@@ -428,7 +437,7 @@ endif
 ifeq (,$(findstring -s ,$(COMPILER)))
 EXECPPAS=
 else
-EXECPPAS=@$(PPAS)
+EXECPPAS:=@$(PPAS)
 endif
 
 # ldconfig to rebuild .so cache
@@ -558,6 +567,7 @@ SMARTEXT=.sl
 STATICLIBEXT=.a
 SHAREDLIBEXT=.so
 PACKAGESUFFIX=
+FPCMADE=fpcmade
 
 # Go32v1
 ifeq ($(OS_TARGET),go32v1)
@@ -568,16 +578,19 @@ SMARTEXT=.sl1
 STATICLIBEXT=.a1
 SHAREDLIBEXT=.so1
 PACKAGESUFFIX=v1
+FPCMADE=fpcmade.v1
 endif
 
 # Go32v2
 ifeq ($(OS_TARGET),go32v2)
 PACKAGESUFFIX=go32
+FPCMADE=fpcmade.dos
 endif
 
 # Linux
 ifeq ($(OS_TARGET),linux)
 PACKAGESUFFIX=linux
+FPCMADE=fpcmade.lnx
 endif
 
 # Win32
@@ -589,6 +602,7 @@ SMARTEXT=.slw
 STATICLIBEXT=.aw
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=win32
+FPCMADE=fpcmade.w32
 endif
 
 # OS/2
@@ -600,6 +614,7 @@ SMARTEXT=.so
 STATICLIBEXT=.ao2
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=os2
+FPCMADE=fpcmade.os2
 endif
 
 # library prefix
@@ -666,14 +681,14 @@ info: fpc_info $(addsuffix _info,$(DIROBJECTS))
 #####################################################################
 
 ifneq ($(wildcard $(RTLDIR)),)
-ifeq ($(wildcard $(RTLDIR)/$(FPCMAKED)),)
+ifeq ($(wildcard $(RTLDIR)/$(FPCMADE)),)
 override COMPILEPACKAGES+=rtl
 rtl_package:
 	$(MAKE) -C $(RTLDIR) all
 endif
 endif
 ifneq ($(wildcard $(FCLDIR)),)
-ifeq ($(wildcard $(FCLDIR)/$(FPCMAKED)),)
+ifeq ($(wildcard $(FCLDIR)/$(FPCMADE)),)
 override COMPILEPACKAGES+=fcl
 fcl_package:
 	$(MAKE) -C $(FCLDIR) all
@@ -703,12 +718,12 @@ fpc_exes: $(EXEFILES)
 
 .PHONY: fpc_all fpc_debug
 
-$(FPCMAKED):
-	@$(ECHO) Compiled > $(FPCMAKED)
+$(FPCMADE):
+	@$(ECHO) Compiled > $(FPCMADE)
 
 fpc_all: $(addsuffix _package,$(COMPILEPACKAGES)) \
 	 $(addsuffix _component,$(COMPILECOMPONENTS)) \
-	 $(ALLTARGET) $(FPCMAKED)
+	 $(ALLTARGET) $(FPCMADE)
 
 fpc_debug:
 	$(MAKE) all DEBUG=1
@@ -741,7 +756,7 @@ fpc_debug:
 
 # Default sharedlib units are all unit objects
 ifndef SHAREDLIBUNITOBJECTS
-SHAREDLIBUNITOBJECTS=$(UNITOBJECTS)
+SHAREDLIBUNITOBJECTS:=$(UNITOBJECTS)
 endif
 
 fpc_smart:
@@ -771,13 +786,13 @@ endif
 ifdef INSTALLPPUFILES
 ifdef PPUFILES
 ifdef inlinux
-INSTALLPPULINKFILES=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
-INSTALLPPULIBFILES=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
+INSTALLPPULIBFILES:=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
 else
-INSTALLPPULINKFILES=$(shell $(PPUFILES) $(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLPPUFILES))
 endif
 else
-INSTALLPPULINKFILES=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 endif
 endif
 
@@ -851,7 +866,7 @@ endif
 
 # Test dir if none specified
 ifndef DESTZIPDIR
-DESTZIPDIR=$(BASEDIR)
+DESTZIPDIR:=$(BASEDIR)
 endif
 
 # Add .zip/.tar.gz extension
@@ -906,9 +921,9 @@ endif
 
 ifdef CLEANPPUFILES
 ifdef PPUFILES
-CLEANPPULINKFILES=$(shell $(PPUFILES) $(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES))
 else
-CLEANPPULINKFILES=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)))
 endif
 endif
 
@@ -925,7 +940,7 @@ endif
 ifdef EXTRACLEANFILES
 	-$(DEL) $(EXTRACLEANFILES)
 endif
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 fpc_cleanall: $(CLEANTARGET)
 ifdef CLEANEXEFILES
@@ -933,7 +948,7 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 #####################################################################
 # Info rules

+ 37 - 22
utils/h2pas/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-11-25 23:45
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: all
@@ -65,12 +65,17 @@ endif
 
 # What compiler to use ?
 ifndef FPC
+# Compatibility with old makefiles
+ifdef PP
+export FPC=$(PP)
+else
 ifdef inOS2
 export FPC=ppos2$(EXEEXT)
 else
 export FPC=ppc386$(EXEEXT)
 endif
 endif
+endif
 
 # Target OS
 ifndef OS_TARGET
@@ -194,6 +199,7 @@ endif
 
 # create fcldir,rtldir,unitdir
 ifdef FPCDIR
+override FPCDIR:=$(subst \,/,$(FPCDIR))
 ifneq ($(FPCDIR),.)
 override RTLDIR=$(FPCDIR)/rtl/$(OS_TARGET)
 override FCLDIR=$(FPCDIR)/fcl/$(OS_TARGET)
@@ -327,7 +333,15 @@ ifdef CFGFILE
 override FPCOPT+=@$(CFGFILE)
 endif
 
-override COMPILER=$(FPC) $(FPCOPT)
+# For win32 the options are passed using the environment variable FPCEXTCMD
+ifeq ($(OS_SOURCE),win32)
+override FPCEXTCMD:=$(FPCOPT)
+override FPCOPT:=!FPCEXTCMD
+export FPCEXTCMD
+endif
+
+# Compiler commandline
+override COMPILER:=$(FPC) $(FPCOPT)
 
 #####################################################################
 # Shell tools
@@ -389,11 +403,6 @@ endif
 # Default Tools
 #####################################################################
 
-# file used to check if a package is compiled
-ifndef FPCMAKED
-FPCMAKED=fpcmaked
-endif
-
 # assembler, redefine it if cross compiling
 ifndef AS
 AS=as
@@ -419,7 +428,7 @@ endif
 ifeq (,$(findstring -s ,$(COMPILER)))
 EXECPPAS=
 else
-EXECPPAS=@$(PPAS)
+EXECPPAS:=@$(PPAS)
 endif
 
 # ldconfig to rebuild .so cache
@@ -539,6 +548,7 @@ SMARTEXT=.sl
 STATICLIBEXT=.a
 SHAREDLIBEXT=.so
 PACKAGESUFFIX=
+FPCMADE=fpcmade
 
 # Go32v1
 ifeq ($(OS_TARGET),go32v1)
@@ -549,16 +559,19 @@ SMARTEXT=.sl1
 STATICLIBEXT=.a1
 SHAREDLIBEXT=.so1
 PACKAGESUFFIX=v1
+FPCMADE=fpcmade.v1
 endif
 
 # Go32v2
 ifeq ($(OS_TARGET),go32v2)
 PACKAGESUFFIX=go32
+FPCMADE=fpcmade.dos
 endif
 
 # Linux
 ifeq ($(OS_TARGET),linux)
 PACKAGESUFFIX=linux
+FPCMADE=fpcmade.lnx
 endif
 
 # Win32
@@ -570,6 +583,7 @@ SMARTEXT=.slw
 STATICLIBEXT=.aw
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=win32
+FPCMADE=fpcmade.w32
 endif
 
 # OS/2
@@ -581,6 +595,7 @@ SMARTEXT=.so
 STATICLIBEXT=.ao2
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=os2
+FPCMADE=fpcmade.os2
 endif
 
 # library prefix
@@ -641,7 +656,7 @@ info: fpc_info
 #####################################################################
 
 ifneq ($(wildcard $(RTLDIR)),)
-ifeq ($(wildcard $(RTLDIR)/$(FPCMAKED)),)
+ifeq ($(wildcard $(RTLDIR)/$(FPCMADE)),)
 override COMPILEPACKAGES+=rtl
 rtl_package:
 	$(MAKE) -C $(RTLDIR) all
@@ -671,12 +686,12 @@ fpc_exes: $(EXEFILES)
 
 .PHONY: fpc_all fpc_debug
 
-$(FPCMAKED):
-	@$(ECHO) Compiled > $(FPCMAKED)
+$(FPCMADE):
+	@$(ECHO) Compiled > $(FPCMADE)
 
 fpc_all: $(addsuffix _package,$(COMPILEPACKAGES)) \
 	 $(addsuffix _component,$(COMPILECOMPONENTS)) \
-	 $(ALLTARGET) $(FPCMAKED)
+	 $(ALLTARGET) $(FPCMADE)
 
 fpc_debug:
 	$(MAKE) all DEBUG=1
@@ -709,7 +724,7 @@ fpc_debug:
 
 # Default sharedlib units are all unit objects
 ifndef SHAREDLIBUNITOBJECTS
-SHAREDLIBUNITOBJECTS=$(UNITOBJECTS)
+SHAREDLIBUNITOBJECTS:=$(UNITOBJECTS)
 endif
 
 fpc_smart:
@@ -739,13 +754,13 @@ endif
 ifdef INSTALLPPUFILES
 ifdef PPUFILES
 ifdef inlinux
-INSTALLPPULINKFILES=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
-INSTALLPPULIBFILES=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
+INSTALLPPULIBFILES:=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
 else
-INSTALLPPULINKFILES=$(shell $(PPUFILES) $(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLPPUFILES))
 endif
 else
-INSTALLPPULINKFILES=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 endif
 endif
 
@@ -819,7 +834,7 @@ endif
 
 # Test dir if none specified
 ifndef DESTZIPDIR
-DESTZIPDIR=$(BASEDIR)
+DESTZIPDIR:=$(BASEDIR)
 endif
 
 # Add .zip/.tar.gz extension
@@ -874,9 +889,9 @@ endif
 
 ifdef CLEANPPUFILES
 ifdef PPUFILES
-CLEANPPULINKFILES=$(shell $(PPUFILES) $(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES))
 else
-CLEANPPULINKFILES=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)))
 endif
 endif
 
@@ -893,7 +908,7 @@ endif
 ifdef EXTRACLEANFILES
 	-$(DEL) $(EXTRACLEANFILES)
 endif
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 fpc_cleanall: $(CLEANTARGET)
 ifdef CLEANEXEFILES
@@ -901,7 +916,7 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 #####################################################################
 # Info rules

+ 37 - 22
utils/simulator/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-11-25 23:45
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: all
@@ -65,12 +65,17 @@ endif
 
 # What compiler to use ?
 ifndef FPC
+# Compatibility with old makefiles
+ifdef PP
+export FPC=$(PP)
+else
 ifdef inOS2
 export FPC=ppos2$(EXEEXT)
 else
 export FPC=ppc386$(EXEEXT)
 endif
 endif
+endif
 
 # Target OS
 ifndef OS_TARGET
@@ -193,6 +198,7 @@ endif
 
 # create fcldir,rtldir,unitdir
 ifdef FPCDIR
+override FPCDIR:=$(subst \,/,$(FPCDIR))
 ifneq ($(FPCDIR),.)
 override RTLDIR=$(FPCDIR)/rtl/$(OS_TARGET)
 override FCLDIR=$(FPCDIR)/fcl/$(OS_TARGET)
@@ -322,7 +328,15 @@ ifdef CFGFILE
 override FPCOPT+=@$(CFGFILE)
 endif
 
-override COMPILER=$(FPC) $(FPCOPT)
+# For win32 the options are passed using the environment variable FPCEXTCMD
+ifeq ($(OS_SOURCE),win32)
+override FPCEXTCMD:=$(FPCOPT)
+override FPCOPT:=!FPCEXTCMD
+export FPCEXTCMD
+endif
+
+# Compiler commandline
+override COMPILER:=$(FPC) $(FPCOPT)
 
 #####################################################################
 # Shell tools
@@ -384,11 +398,6 @@ endif
 # Default Tools
 #####################################################################
 
-# file used to check if a package is compiled
-ifndef FPCMAKED
-FPCMAKED=fpcmaked
-endif
-
 # assembler, redefine it if cross compiling
 ifndef AS
 AS=as
@@ -414,7 +423,7 @@ endif
 ifeq (,$(findstring -s ,$(COMPILER)))
 EXECPPAS=
 else
-EXECPPAS=@$(PPAS)
+EXECPPAS:=@$(PPAS)
 endif
 
 # ldconfig to rebuild .so cache
@@ -534,6 +543,7 @@ SMARTEXT=.sl
 STATICLIBEXT=.a
 SHAREDLIBEXT=.so
 PACKAGESUFFIX=
+FPCMADE=fpcmade
 
 # Go32v1
 ifeq ($(OS_TARGET),go32v1)
@@ -544,16 +554,19 @@ SMARTEXT=.sl1
 STATICLIBEXT=.a1
 SHAREDLIBEXT=.so1
 PACKAGESUFFIX=v1
+FPCMADE=fpcmade.v1
 endif
 
 # Go32v2
 ifeq ($(OS_TARGET),go32v2)
 PACKAGESUFFIX=go32
+FPCMADE=fpcmade.dos
 endif
 
 # Linux
 ifeq ($(OS_TARGET),linux)
 PACKAGESUFFIX=linux
+FPCMADE=fpcmade.lnx
 endif
 
 # Win32
@@ -565,6 +578,7 @@ SMARTEXT=.slw
 STATICLIBEXT=.aw
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=win32
+FPCMADE=fpcmade.w32
 endif
 
 # OS/2
@@ -576,6 +590,7 @@ SMARTEXT=.so
 STATICLIBEXT=.ao2
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=os2
+FPCMADE=fpcmade.os2
 endif
 
 # library prefix
@@ -636,7 +651,7 @@ info: fpc_info
 #####################################################################
 
 ifneq ($(wildcard $(RTLDIR)),)
-ifeq ($(wildcard $(RTLDIR)/$(FPCMAKED)),)
+ifeq ($(wildcard $(RTLDIR)/$(FPCMADE)),)
 override COMPILEPACKAGES+=rtl
 rtl_package:
 	$(MAKE) -C $(RTLDIR) all
@@ -666,12 +681,12 @@ fpc_exes: $(EXEFILES)
 
 .PHONY: fpc_all fpc_debug
 
-$(FPCMAKED):
-	@$(ECHO) Compiled > $(FPCMAKED)
+$(FPCMADE):
+	@$(ECHO) Compiled > $(FPCMADE)
 
 fpc_all: $(addsuffix _package,$(COMPILEPACKAGES)) \
 	 $(addsuffix _component,$(COMPILECOMPONENTS)) \
-	 $(ALLTARGET) $(FPCMAKED)
+	 $(ALLTARGET) $(FPCMADE)
 
 fpc_debug:
 	$(MAKE) all DEBUG=1
@@ -704,7 +719,7 @@ fpc_debug:
 
 # Default sharedlib units are all unit objects
 ifndef SHAREDLIBUNITOBJECTS
-SHAREDLIBUNITOBJECTS=$(UNITOBJECTS)
+SHAREDLIBUNITOBJECTS:=$(UNITOBJECTS)
 endif
 
 fpc_smart:
@@ -734,13 +749,13 @@ endif
 ifdef INSTALLPPUFILES
 ifdef PPUFILES
 ifdef inlinux
-INSTALLPPULINKFILES=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
-INSTALLPPULIBFILES=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
+INSTALLPPULIBFILES:=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
 else
-INSTALLPPULINKFILES=$(shell $(PPUFILES) $(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLPPUFILES))
 endif
 else
-INSTALLPPULINKFILES=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 endif
 endif
 
@@ -814,7 +829,7 @@ endif
 
 # Test dir if none specified
 ifndef DESTZIPDIR
-DESTZIPDIR=$(BASEDIR)
+DESTZIPDIR:=$(BASEDIR)
 endif
 
 # Add .zip/.tar.gz extension
@@ -869,9 +884,9 @@ endif
 
 ifdef CLEANPPUFILES
 ifdef PPUFILES
-CLEANPPULINKFILES=$(shell $(PPUFILES) $(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES))
 else
-CLEANPPULINKFILES=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)))
 endif
 endif
 
@@ -888,7 +903,7 @@ endif
 ifdef EXTRACLEANFILES
 	-$(DEL) $(EXTRACLEANFILES)
 endif
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 fpc_cleanall: $(CLEANTARGET)
 ifdef CLEANEXEFILES
@@ -896,7 +911,7 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 #####################################################################
 # Info rules

+ 37 - 22
utils/tply/Makefile

@@ -1,5 +1,5 @@
 #
-# Makefile generated by fpcmake v0.99.13 on 1999-11-25 23:45
+# Makefile generated by fpcmake v0.99.13 on 1999-12-19 16:02
 #
 
 defaultrule: all
@@ -65,12 +65,17 @@ endif
 
 # What compiler to use ?
 ifndef FPC
+# Compatibility with old makefiles
+ifdef PP
+export FPC=$(PP)
+else
 ifdef inOS2
 export FPC=ppos2$(EXEEXT)
 else
 export FPC=ppc386$(EXEEXT)
 endif
 endif
+endif
 
 # Target OS
 ifndef OS_TARGET
@@ -204,6 +209,7 @@ endif
 
 # create fcldir,rtldir,unitdir
 ifdef FPCDIR
+override FPCDIR:=$(subst \,/,$(FPCDIR))
 ifneq ($(FPCDIR),.)
 override RTLDIR=$(FPCDIR)/rtl/$(OS_TARGET)
 override FCLDIR=$(FPCDIR)/fcl/$(OS_TARGET)
@@ -337,7 +343,15 @@ ifdef CFGFILE
 override FPCOPT+=@$(CFGFILE)
 endif
 
-override COMPILER=$(FPC) $(FPCOPT)
+# For win32 the options are passed using the environment variable FPCEXTCMD
+ifeq ($(OS_SOURCE),win32)
+override FPCEXTCMD:=$(FPCOPT)
+override FPCOPT:=!FPCEXTCMD
+export FPCEXTCMD
+endif
+
+# Compiler commandline
+override COMPILER:=$(FPC) $(FPCOPT)
 
 #####################################################################
 # Shell tools
@@ -399,11 +413,6 @@ endif
 # Default Tools
 #####################################################################
 
-# file used to check if a package is compiled
-ifndef FPCMAKED
-FPCMAKED=fpcmaked
-endif
-
 # assembler, redefine it if cross compiling
 ifndef AS
 AS=as
@@ -429,7 +438,7 @@ endif
 ifeq (,$(findstring -s ,$(COMPILER)))
 EXECPPAS=
 else
-EXECPPAS=@$(PPAS)
+EXECPPAS:=@$(PPAS)
 endif
 
 # ldconfig to rebuild .so cache
@@ -549,6 +558,7 @@ SMARTEXT=.sl
 STATICLIBEXT=.a
 SHAREDLIBEXT=.so
 PACKAGESUFFIX=
+FPCMADE=fpcmade
 
 # Go32v1
 ifeq ($(OS_TARGET),go32v1)
@@ -559,16 +569,19 @@ SMARTEXT=.sl1
 STATICLIBEXT=.a1
 SHAREDLIBEXT=.so1
 PACKAGESUFFIX=v1
+FPCMADE=fpcmade.v1
 endif
 
 # Go32v2
 ifeq ($(OS_TARGET),go32v2)
 PACKAGESUFFIX=go32
+FPCMADE=fpcmade.dos
 endif
 
 # Linux
 ifeq ($(OS_TARGET),linux)
 PACKAGESUFFIX=linux
+FPCMADE=fpcmade.lnx
 endif
 
 # Win32
@@ -580,6 +593,7 @@ SMARTEXT=.slw
 STATICLIBEXT=.aw
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=win32
+FPCMADE=fpcmade.w32
 endif
 
 # OS/2
@@ -591,6 +605,7 @@ SMARTEXT=.so
 STATICLIBEXT=.ao2
 SHAREDLIBEXT=.dll
 PACKAGESUFFIX=os2
+FPCMADE=fpcmade.os2
 endif
 
 # library prefix
@@ -651,7 +666,7 @@ info: fpc_info
 #####################################################################
 
 ifneq ($(wildcard $(RTLDIR)),)
-ifeq ($(wildcard $(RTLDIR)/$(FPCMAKED)),)
+ifeq ($(wildcard $(RTLDIR)/$(FPCMADE)),)
 override COMPILEPACKAGES+=rtl
 rtl_package:
 	$(MAKE) -C $(RTLDIR) all
@@ -695,12 +710,12 @@ fpc_exes: $(EXEFILES)
 
 .PHONY: fpc_all fpc_debug
 
-$(FPCMAKED):
-	@$(ECHO) Compiled > $(FPCMAKED)
+$(FPCMADE):
+	@$(ECHO) Compiled > $(FPCMADE)
 
 fpc_all: $(addsuffix _package,$(COMPILEPACKAGES)) \
 	 $(addsuffix _component,$(COMPILECOMPONENTS)) \
-	 $(ALLTARGET) $(FPCMAKED)
+	 $(ALLTARGET) $(FPCMADE)
 
 fpc_debug:
 	$(MAKE) all DEBUG=1
@@ -733,7 +748,7 @@ fpc_debug:
 
 # Default sharedlib units are all unit objects
 ifndef SHAREDLIBUNITOBJECTS
-SHAREDLIBUNITOBJECTS=$(UNITOBJECTS)
+SHAREDLIBUNITOBJECTS:=$(UNITOBJECTS)
 endif
 
 fpc_smart:
@@ -763,13 +778,13 @@ endif
 ifdef INSTALLPPUFILES
 ifdef PPUFILES
 ifdef inlinux
-INSTALLPPULINKFILES=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
-INSTALLPPULIBFILES=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
+INSTALLPPULIBFILES:=$(shell $(PPUFILES) -L $(INSTALLPPUFILES))
 else
-INSTALLPPULINKFILES=$(shell $(PPUFILES) $(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(shell $(PPUFILES) $(INSTALLPPUFILES))
 endif
 else
-INSTALLPPULINKFILES=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES))
+INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)))
 endif
 endif
 
@@ -843,7 +858,7 @@ endif
 
 # Test dir if none specified
 ifndef DESTZIPDIR
-DESTZIPDIR=$(BASEDIR)
+DESTZIPDIR:=$(BASEDIR)
 endif
 
 # Add .zip/.tar.gz extension
@@ -898,9 +913,9 @@ endif
 
 ifdef CLEANPPUFILES
 ifdef PPUFILES
-CLEANPPULINKFILES=$(shell $(PPUFILES) $(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES))
 else
-CLEANPPULINKFILES=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES))
+CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)))
 endif
 endif
 
@@ -917,7 +932,7 @@ endif
 ifdef EXTRACLEANFILES
 	-$(DEL) $(EXTRACLEANFILES)
 endif
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 fpc_cleanall: $(CLEANTARGET)
 ifdef CLEANEXEFILES
@@ -925,7 +940,7 @@ ifdef CLEANEXEFILES
 endif
 	-$(DEL) *$(OEXT) *$(PPUEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 	-$(DELTREE) *$(SMARTEXT)
-	-$(DEL) $(FPCMAKED) $(PPAS) link.res $(REDIRFILE)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(REDIRFILE)
 
 #####################################################################
 # Info rules