瀏覽代碼

* updates from fixes branch so fpcmake for Makefiles works

peter 24 年之前
父節點
當前提交
26eb97c66d

+ 38 - 30
ide/Makefile

@@ -1,13 +1,13 @@
 #
-# Don't edit, this file is generated by fpcmake v1.99.0 [2001/02/24]
+# Don't edit, this file is generated by fpcmake v1.99.0 [2001/04/25]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
 ifeq ($(findstring ;,$(PATH)),)
 inUnix=1
-SEARCHPATH=$(subst :, ,$(PATH))
+SEARCHPATH:=$(subst :, ,$(PATH))
 else
-SEARCHPATH=$(subst ;, ,$(PATH))
+SEARCHPATH:=$(subst ;, ,$(PATH))
 endif
 PWD:=$(strip $(wildcard $(addsuffix /pwd.exe,$(SEARCHPATH))))
 ifeq ($(PWD),)
@@ -50,7 +50,7 @@ endif
 ifdef inUnix
 PATHSEP=/
 else
-PATHSEP=$(subst /,\,/)
+PATHSEP:=$(subst /,\,/)
 endif
 ifdef PWD
 BASEDIR:=$(shell $(PWD))
@@ -107,10 +107,11 @@ endif
 endif
 endif
 endif
-UNITSDIR=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
-PACKAGESDIR=$(wildcard $(FPCDIR) $(FPCDIR)/packages)
+UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
+PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages)
 override PACKAGE_NAME=ide
 override PACKAGE_VERSION=1.0.5
+override DEFAULT_DIR=text
 override TARGET_DIRS+=fake text
 ifndef ECHO
 ECHO:=$(strip $(wildcard $(addsuffix /gecho$(EXEEXT),$(SEARCHPATH))))
@@ -168,6 +169,9 @@ endif
 ifndef LD
 LD=ld
 endif
+ifndef RC
+RC=rc
+endif
 PPAS=ppas$(BATCHEXT)
 ifdef inUnix
 LDCONFIG=ldconfig
@@ -493,6 +497,9 @@ ifdef CFGFILE
 override FPCOPT+=@$(CFGFILE)
 endif
 ifeq ($(OS_SOURCE),win32)
+USEENV=1
+endif
+ifdef USEENV
 override FPCEXTCMD:=$(FPCOPT)
 override FPCOPT:=!FPCEXTCMD
 export FPCEXTCMD
@@ -577,14 +584,13 @@ fpc_sourceinstall: distclean
 	$(MKDIR) $(INSTALL_SOURCEDIR)
 	$(COPYTREE) $(BASEDIR) $(INSTALL_SOURCEDIR)
 fpc_exampleinstall: $(addsuffix _distclean,$(TARGET_EXAMPLEDIRS))
-ifdef EXAMPLESOURCEFILES
+ifdef HASEXAMPLES
 	$(MKDIR) $(INSTALL_EXAMPLEDIR)
+endif
+ifdef EXAMPLESOURCEFILES
 	$(COPY) $(EXAMPLESOURCEFILES) $(INSTALL_EXAMPLEDIR)
 endif
 ifdef TARGET_EXAMPLEDIRS
-ifndef EXAMPLESOURCEFILES
-	$(MKDIR) $(INSTALL_EXAMPLEDIR)
-endif
 	$(COPYTREE) $(addsuffix /*,$(TARGET_EXAMPLEDIRS)) $(INSTALL_EXAMPLEDIR)
 endif
 fpc_distinstall: fpc_install fpc_exampleinstall
@@ -654,7 +660,9 @@ endif
 fpc_zipsourceinstall:
 	$(MAKE) fpc_zipinstall ZIPTARGET=sourceinstall ZIPSUFFIX=src
 fpc_zipexampleinstall:
+ifdef HASEXAMPLES
 	$(MAKE) fpc_zipinstall ZIPTARGET=exampleinstall ZIPSUFFIX=exm
+endif
 fpc_zipdistinstall:
 	$(MAKE) fpc_zipinstall ZIPTARGET=distinstall
 .PHONY: fpc_clean fpc_cleanall fpc_distclean
@@ -855,23 +863,21 @@ text:
 	$(MAKE) -C text all
 .PHONY: text_all text_debug text_examples text_smart text_shared text_install text_sourceinstall text_exampleinstall text_distinstall text_zipinstall text_zipsourceinstall text_zipexampleinstall text_zipdistinstall text_clean text_distclean text_cleanall text_info text
 endif
-debug: fpc_debug $(addsuffix _debug,$(TARGET_DIRS))
-examples: fpc_examples $(addsuffix _examples,$(TARGET_DIRS))
-smart: fpc_smart $(addsuffix _smart,$(TARGET_DIRS))
-shared: fpc_shared $(addsuffix _shared,$(TARGET_DIRS))
-install: fpc_install $(addsuffix _install,$(TARGET_DIRS))
-sourceinstall: fpc_sourceinstall
-exampleinstall: fpc_exampleinstall $(addsuffix _exampleinstall,$(TARGET_DIRS))
-distinstall: fpc_distinstall $(addsuffix _distinstall,$(TARGET_DIRS))
-zipinstall: fpc_zipinstall
-zipsourceinstall: fpc_zipsourceinstall
-zipexampleinstall: fpc_zipexampleinstall $(addsuffix _zipexampleinstall,$(TARGET_DIRS))
-zipdistinstall: fpc_zipdistinstall $(addsuffix _zipdistinstall,$(TARGET_DIRS))
-clean: fpc_clean $(addsuffix _clean,$(TARGET_DIRS))
-distclean: fpc_distclean $(addsuffix _distclean,$(TARGET_DIRS))
-cleanall: fpc_cleanall $(addsuffix _cleanall,$(TARGET_DIRS))
-info: fpc_info $(addsuffix _info,$(TARGET_DIRS))
-.PHONY: debug examples smart shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
+debug: fpc_debug $(addsuffix _debug,$(DEFAULT_DIR))
+examples: fpc_examples $(addsuffix _examples,$(DEFAULT_DIR))
+smart: fpc_smart $(addsuffix _smart,$(DEFAULT_DIR))
+shared: fpc_shared $(addsuffix _shared,$(DEFAULT_DIR))
+install: fpc_install $(addsuffix _install,$(DEFAULT_DIR))
+sourceinstall: fpc_sourceinstall $(addsuffix _sourceinstall,$(DEFAULT_DIR))
+exampleinstall: fpc_exampleinstall $(addsuffix _exampleinstall,$(DEFAULT_DIR))
+distinstall: fpc_distinstall $(addsuffix _distinstall,$(DEFAULT_DIR))
+zipinstall: fpc_zipinstall $(addsuffix _zipinstall,$(DEFAULT_DIR))
+zipsourceinstall: fpc_zipsourceinstall $(addsuffix _zipsourceinstall,$(DEFAULT_DIR))
+zipexampleinstall: fpc_zipexampleinstall $(addsuffix _zipexampleinstall,$(DEFAULT_DIR))
+zipdistinstall: fpc_zipdistinstall $(addsuffix _zipdistinstall,$(DEFAULT_DIR))
+cleanall: fpc_cleanall $(addsuffix _cleanall,$(DEFAULT_DIR))
+info: fpc_info $(addsuffix _info,$(DEFAULT_DIR))
+.PHONY: debug examples smart shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall cleanall info
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif
@@ -879,10 +885,12 @@ endif
 all:
 	$(MAKE) -C text all
 gdb:
-	$(MAKE) -C text all GDB=1
+	$(MAKE) -C text gdb
 full:
-	$(MAKE) -C text all FULL=1 "NEEDOPT+=-Sg -dGDB -dBROWSERCOL"
+	$(MAKE) -C text full
 fullgdb:
-	$(MAKE) -C text all FULL=1 GDB=1 "NEEDOPT+=-Sg -dGDB -dBROWSERCOL"
+	$(MAKE) -C text fullgdb
+clean: fpc_clean fake_clean
+distclean: fpc_distclean fake_distclean
 clean_compiler:
 	$(MAKE) -C ../compiler clean

+ 12 - 3
ide/Makefile.fpc

@@ -9,6 +9,9 @@ version=1.0.5
 [target]
 dirs=fake text
 
+[default]
+dir=text
+
 [rules]
 .PHONY: gdb full fullgdb clean_compiler
 
@@ -16,13 +19,19 @@ all:
         $(MAKE) -C text all
 
 gdb:
-        $(MAKE) -C text all GDB=1
+        $(MAKE) -C text gdb
 
 full:
-        $(MAKE) -C text all FULL=1 "NEEDOPT+=-Sg -dGDB -dBROWSERCOL"
+        $(MAKE) -C text full
 
 fullgdb:
-        $(MAKE) -C text all FULL=1 GDB=1 "NEEDOPT+=-Sg -dGDB -dBROWSERCOL"
+        $(MAKE) -C text fullgdb
+
+# Also clean the fake dir
+clean: fpc_clean fake_clean
+
+distclean: fpc_distclean fake_distclean
+
 
 #
 # Misc

+ 15 - 10
ide/fake/Makefile

@@ -1,13 +1,13 @@
 #
-# Don't edit, this file is generated by fpcmake v1.99.0 [2001/02/24]
+# Don't edit, this file is generated by fpcmake v1.99.0 [2001/04/25]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
 ifeq ($(findstring ;,$(PATH)),)
 inUnix=1
-SEARCHPATH=$(subst :, ,$(PATH))
+SEARCHPATH:=$(subst :, ,$(PATH))
 else
-SEARCHPATH=$(subst ;, ,$(PATH))
+SEARCHPATH:=$(subst ;, ,$(PATH))
 endif
 PWD:=$(strip $(wildcard $(addsuffix /pwd.exe,$(SEARCHPATH))))
 ifeq ($(PWD),)
@@ -50,7 +50,7 @@ endif
 ifdef inUnix
 PATHSEP=/
 else
-PATHSEP=$(subst /,\,/)
+PATHSEP:=$(subst /,\,/)
 endif
 ifdef PWD
 BASEDIR:=$(shell $(PWD))
@@ -107,8 +107,8 @@ endif
 endif
 endif
 endif
-UNITSDIR=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
-PACKAGESDIR=$(wildcard $(FPCDIR) $(FPCDIR)/packages)
+UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
+PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages)
 override TARGET_DIRS+=compiler gdb
 ifndef ECHO
 ECHO:=$(strip $(wildcard $(addsuffix /gecho$(EXEEXT),$(SEARCHPATH))))
@@ -166,6 +166,9 @@ endif
 ifndef LD
 LD=ld
 endif
+ifndef RC
+RC=rc
+endif
 PPAS=ppas$(BATCHEXT)
 ifdef inUnix
 LDCONFIG=ldconfig
@@ -491,6 +494,9 @@ ifdef CFGFILE
 override FPCOPT+=@$(CFGFILE)
 endif
 ifeq ($(OS_SOURCE),win32)
+USEENV=1
+endif
+ifdef USEENV
 override FPCEXTCMD:=$(FPCOPT)
 override FPCOPT:=!FPCEXTCMD
 export FPCEXTCMD
@@ -575,14 +581,13 @@ fpc_sourceinstall: distclean
 	$(MKDIR) $(INSTALL_SOURCEDIR)
 	$(COPYTREE) $(BASEDIR) $(INSTALL_SOURCEDIR)
 fpc_exampleinstall: $(addsuffix _distclean,$(TARGET_EXAMPLEDIRS))
-ifdef EXAMPLESOURCEFILES
+ifdef HASEXAMPLES
 	$(MKDIR) $(INSTALL_EXAMPLEDIR)
+endif
+ifdef EXAMPLESOURCEFILES
 	$(COPY) $(EXAMPLESOURCEFILES) $(INSTALL_EXAMPLEDIR)
 endif
 ifdef TARGET_EXAMPLEDIRS
-ifndef EXAMPLESOURCEFILES
-	$(MKDIR) $(INSTALL_EXAMPLEDIR)
-endif
 	$(COPYTREE) $(addsuffix /*,$(TARGET_EXAMPLEDIRS)) $(INSTALL_EXAMPLEDIR)
 endif
 fpc_distinstall: fpc_install fpc_exampleinstall

+ 15 - 10
ide/fake/compiler/Makefile

@@ -1,13 +1,13 @@
 #
-# Don't edit, this file is generated by fpcmake v1.99.0 [2001/02/24]
+# Don't edit, this file is generated by fpcmake v1.99.0 [2001/04/25]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
 ifeq ($(findstring ;,$(PATH)),)
 inUnix=1
-SEARCHPATH=$(subst :, ,$(PATH))
+SEARCHPATH:=$(subst :, ,$(PATH))
 else
-SEARCHPATH=$(subst ;, ,$(PATH))
+SEARCHPATH:=$(subst ;, ,$(PATH))
 endif
 PWD:=$(strip $(wildcard $(addsuffix /pwd.exe,$(SEARCHPATH))))
 ifeq ($(PWD),)
@@ -50,7 +50,7 @@ endif
 ifdef inUnix
 PATHSEP=/
 else
-PATHSEP=$(subst /,\,/)
+PATHSEP:=$(subst /,\,/)
 endif
 ifdef PWD
 BASEDIR:=$(shell $(PWD))
@@ -107,8 +107,8 @@ endif
 endif
 endif
 endif
-UNITSDIR=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
-PACKAGESDIR=$(wildcard $(FPCDIR) $(FPCDIR)/packages)
+UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
+PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages)
 override TARGET_UNITS+=browcol compiler systems version comphook globtype tokens
 ifndef ECHO
 ECHO:=$(strip $(wildcard $(addsuffix /gecho$(EXEEXT),$(SEARCHPATH))))
@@ -166,6 +166,9 @@ endif
 ifndef LD
 LD=ld
 endif
+ifndef RC
+RC=rc
+endif
 PPAS=ppas$(BATCHEXT)
 ifdef inUnix
 LDCONFIG=ldconfig
@@ -534,6 +537,9 @@ ifdef CFGFILE
 override FPCOPT+=@$(CFGFILE)
 endif
 ifeq ($(OS_SOURCE),win32)
+USEENV=1
+endif
+ifdef USEENV
 override FPCEXTCMD:=$(FPCOPT)
 override FPCOPT:=!FPCEXTCMD
 export FPCEXTCMD
@@ -626,14 +632,13 @@ fpc_sourceinstall: distclean
 	$(MKDIR) $(INSTALL_SOURCEDIR)
 	$(COPYTREE) $(BASEDIR) $(INSTALL_SOURCEDIR)
 fpc_exampleinstall: $(addsuffix _distclean,$(TARGET_EXAMPLEDIRS))
-ifdef EXAMPLESOURCEFILES
+ifdef HASEXAMPLES
 	$(MKDIR) $(INSTALL_EXAMPLEDIR)
+endif
+ifdef EXAMPLESOURCEFILES
 	$(COPY) $(EXAMPLESOURCEFILES) $(INSTALL_EXAMPLEDIR)
 endif
 ifdef TARGET_EXAMPLEDIRS
-ifndef EXAMPLESOURCEFILES
-	$(MKDIR) $(INSTALL_EXAMPLEDIR)
-endif
 	$(COPYTREE) $(addsuffix /*,$(TARGET_EXAMPLEDIRS)) $(INSTALL_EXAMPLEDIR)
 endif
 fpc_distinstall: fpc_install fpc_exampleinstall

+ 15 - 10
ide/fake/gdb/Makefile

@@ -1,13 +1,13 @@
 #
-# Don't edit, this file is generated by fpcmake v1.99.0 [2001/02/24]
+# Don't edit, this file is generated by fpcmake v1.99.0 [2001/04/25]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
 ifeq ($(findstring ;,$(PATH)),)
 inUnix=1
-SEARCHPATH=$(subst :, ,$(PATH))
+SEARCHPATH:=$(subst :, ,$(PATH))
 else
-SEARCHPATH=$(subst ;, ,$(PATH))
+SEARCHPATH:=$(subst ;, ,$(PATH))
 endif
 PWD:=$(strip $(wildcard $(addsuffix /pwd.exe,$(SEARCHPATH))))
 ifeq ($(PWD),)
@@ -50,7 +50,7 @@ endif
 ifdef inUnix
 PATHSEP=/
 else
-PATHSEP=$(subst /,\,/)
+PATHSEP:=$(subst /,\,/)
 endif
 ifdef PWD
 BASEDIR:=$(shell $(PWD))
@@ -107,8 +107,8 @@ endif
 endif
 endif
 endif
-UNITSDIR=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
-PACKAGESDIR=$(wildcard $(FPCDIR) $(FPCDIR)/packages)
+UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
+PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages)
 override TARGET_UNITS+=gdbcon gdbint
 ifndef ECHO
 ECHO:=$(strip $(wildcard $(addsuffix /gecho$(EXEEXT),$(SEARCHPATH))))
@@ -166,6 +166,9 @@ endif
 ifndef LD
 LD=ld
 endif
+ifndef RC
+RC=rc
+endif
 PPAS=ppas$(BATCHEXT)
 ifdef inUnix
 LDCONFIG=ldconfig
@@ -534,6 +537,9 @@ ifdef CFGFILE
 override FPCOPT+=@$(CFGFILE)
 endif
 ifeq ($(OS_SOURCE),win32)
+USEENV=1
+endif
+ifdef USEENV
 override FPCEXTCMD:=$(FPCOPT)
 override FPCOPT:=!FPCEXTCMD
 export FPCEXTCMD
@@ -626,14 +632,13 @@ fpc_sourceinstall: distclean
 	$(MKDIR) $(INSTALL_SOURCEDIR)
 	$(COPYTREE) $(BASEDIR) $(INSTALL_SOURCEDIR)
 fpc_exampleinstall: $(addsuffix _distclean,$(TARGET_EXAMPLEDIRS))
-ifdef EXAMPLESOURCEFILES
+ifdef HASEXAMPLES
 	$(MKDIR) $(INSTALL_EXAMPLEDIR)
+endif
+ifdef EXAMPLESOURCEFILES
 	$(COPY) $(EXAMPLESOURCEFILES) $(INSTALL_EXAMPLEDIR)
 endif
 ifdef TARGET_EXAMPLEDIRS
-ifndef EXAMPLESOURCEFILES
-	$(MKDIR) $(INSTALL_EXAMPLEDIR)
-endif
 	$(COPYTREE) $(addsuffix /*,$(TARGET_EXAMPLEDIRS)) $(INSTALL_EXAMPLEDIR)
 endif
 fpc_distinstall: fpc_install fpc_exampleinstall

+ 16 - 1
ide/fake/gdb/gdbcon.pas

@@ -26,6 +26,8 @@ type
     procedure Run;virtual;
     procedure TraceStep;virtual;
     procedure TraceNext;virtual;
+    procedure TraceStepI;virtual;
+    procedure TraceNextI;virtual;
     procedure Continue;virtual;
     { needed for dos because newlines are only #10 (PM) }
     procedure WriteErrorBuf;
@@ -115,6 +117,16 @@ begin
 end;
 
 
+procedure TGDBController.TraceStepI;
+begin
+end;
+
+
+procedure TGDBController.TraceNextI;
+begin
+end;
+
+
 procedure TGDBController.Continue;
 begin
 end;
@@ -149,7 +161,10 @@ end;
 end.
 {
   $Log$
-  Revision 1.1  2000-07-13 09:48:34  michael
+  Revision 1.2  2001-04-25 22:38:38  peter
+    * updates from fixes branch so fpcmake for Makefiles works
+
+  Revision 1.1  2000/07/13 09:48:34  michael
   + Initial import
 
   Revision 1.11  1999/02/19 16:54:41  peter

+ 10 - 1
ide/fake/gdb/gdbint.pas

@@ -8,6 +8,11 @@ unit GDBInt;
 interface
 
 type
+  CORE_ADDR = cardinal; { might be target dependent PM }
+  streamtype = (afile,astring);
+  C_FILE     = longint; { at least under DJGPP }
+  P_C_FILE   = ^C_FILE;
+
   psyminfo=^tsyminfo;
   tsyminfo=record
     address  : longint;
@@ -71,6 +76,7 @@ type
     file_end,
     line_start,
     line_end : longint;
+    current_pc      : CORE_ADDR;
     { breakpoint }
     last_breakpoint_number,
     last_breakpoint_address,
@@ -298,7 +304,10 @@ end;
 end.
 {
   $Log$
-  Revision 1.1  2000-07-13 09:48:34  michael
+  Revision 1.2  2001-04-25 22:38:38  peter
+    * updates from fixes branch so fpcmake for Makefiles works
+
+  Revision 1.1  2000/07/13 09:48:34  michael
   + Initial import
 
   Revision 1.9  2000/03/07 10:39:59  pierre

+ 117 - 53
ide/text/Makefile

@@ -1,13 +1,13 @@
 #
-# Don't edit, this file is generated by fpcmake v1.99.0 [2001/02/24]
+# Don't edit, this file is generated by fpcmake v1.99.0 [2001/04/25]
 #
 default: all
 override PATH:=$(subst \,/,$(PATH))
 ifeq ($(findstring ;,$(PATH)),)
 inUnix=1
-SEARCHPATH=$(subst :, ,$(PATH))
+SEARCHPATH:=$(subst :, ,$(PATH))
 else
-SEARCHPATH=$(subst ;, ,$(PATH))
+SEARCHPATH:=$(subst ;, ,$(PATH))
 endif
 PWD:=$(strip $(wildcard $(addsuffix /pwd.exe,$(SEARCHPATH))))
 ifeq ($(PWD),)
@@ -50,7 +50,7 @@ endif
 ifdef inUnix
 PATHSEP=/
 else
-PATHSEP=$(subst /,\,/)
+PATHSEP:=$(subst /,\,/)
 endif
 ifdef PWD
 BASEDIR:=$(shell $(PWD))
@@ -91,6 +91,14 @@ else
 override FPCDIR=wrong
 endif
 ifeq ($(FPCDIR),wrong)
+override FPCDIR=../..
+ifeq ($(wildcard $(FPCDIR)/rtl),)
+ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR=wrong
+endif
+endif
+endif
+ifeq ($(FPCDIR),wrong)
 ifdef inUnix
 override FPCDIR=/usr/local/lib/fpc/$(FPC_VERSION)
 ifeq ($(wildcard $(FPCDIR)/units),)
@@ -107,8 +115,8 @@ endif
 endif
 endif
 endif
-UNITSDIR=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
-PACKAGESDIR=$(wildcard $(FPCDIR) $(FPCDIR)/packages)
+UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
+PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages)
 ifeq ($(OS_TARGET),linux)
 ifneq ($(findstring 1.0.,$(FPC_VERSION)),)
 override FPCOPT+=-dUNIX
@@ -119,21 +127,29 @@ ifneq ($(findstring 1.0.,$(FPC_VERSION)),)
 override FPCOPT+=-dUNIX
 endif
 endif
-ifeq ($(FULL),1)
-override UNITDIR+=../../compiler ../../compiler/$(CPU_TARGET)
-override INCDIR+=../../compiler ../../compiler/$(CPU_TARGET)
+ifdef FAKE
+COMPILERDIR=../fake/compiler
 else
-override UNITDIR+=../fake/compiler
+COMPILERDIR=compiler
 endif
 ifndef GDBINT
 GDBINT=gdbint
 endif
 ifeq ($(GDB),1)
-override GDBLIBDIR+=$(PACKAGESDIR)/$(GDBINT)/libgdb/$(OS_TARGET)
-override GDBOBJDIR+=$(PACKAGESDIR)/$(GDBINT)/libgdb/$(OS_TARGET)
+ifeq ($(DEBUG),1)
+ifneq ($(strip $(wildcard $(PACKAGESDIR)/$(GDBINT)/libgdb/d$(OS_TARGET)/libgdb.a)),)
+OSGDBDIR=d$(OS_TARGET)
+else
+OSGDBDIR=$(OS_TARGET)
+endif
+else
+OSGDBDIR=$(OS_TARGET)
+endif
+GDBLIBDIR+=$(wildcard $(addsuffix /$(GDBINT)/libgdb/$(OSGDBDIR),$(PACKAGESDIR)))
+GDBOBJDIR+=$(wildcard $(addsuffix /$(GDBINT)/libgdb/$(OSGDBDIR),$(PACKAGESDIR)))
 ifeq ($(OS_TARGET),go32v2)
 ifneq ($(DJDIR),)
-override GDBLIBDIR+=$(DJDIR)/lib
+GDBLIBDIR+=$(DJDIR)/lib
 endif
 endif
 ifeq ($(strip $(wildcard $(addsuffix /libgdb.a,$(GDBLIBDIR)))),)
@@ -150,15 +166,11 @@ override OBJDIR+=$(GDBOBJDIR)
 else
 override UNITDIR+=../fake/gdb
 endif
-ifeq ($(FULL),1)
-override OPT+=-dBrowserCol -dGDB
-ifeq ($(CPU_TARGET),i386)
-override OPT+=-dSUPPORT_MMX
-endif
-endif
+override TARGET_DIRS+=compiler
 override TARGET_PROGRAMS+=fp
 override INSTALL_DATADIR=$(INSTALL_BASEDIR)/ide
 override COMPILER_OPTIONS+=-Sg
+override COMPILER_UNITDIR+=$(COMPILERDIR)
 override COMPILER_TARGETDIR+=.
 ifndef ECHO
 ECHO:=$(strip $(wildcard $(addsuffix /gecho$(EXEEXT),$(SEARCHPATH))))
@@ -216,6 +228,9 @@ endif
 ifndef LD
 LD=ld
 endif
+ifndef RC
+RC=rc
+endif
 PPAS=ppas$(BATCHEXT)
 ifdef inUnix
 LDCONFIG=ldconfig
@@ -663,6 +678,9 @@ ifdef CFGFILE
 override FPCOPT+=@$(CFGFILE)
 endif
 ifeq ($(OS_SOURCE),win32)
+USEENV=1
+endif
+ifdef USEENV
 override FPCEXTCMD:=$(FPCOPT)
 override FPCOPT:=!FPCEXTCMD
 export FPCEXTCMD
@@ -759,14 +777,13 @@ fpc_sourceinstall: distclean
 	$(MKDIR) $(INSTALL_SOURCEDIR)
 	$(COPYTREE) $(BASEDIR) $(INSTALL_SOURCEDIR)
 fpc_exampleinstall: $(addsuffix _distclean,$(TARGET_EXAMPLEDIRS))
-ifdef EXAMPLESOURCEFILES
+ifdef HASEXAMPLES
 	$(MKDIR) $(INSTALL_EXAMPLEDIR)
+endif
+ifdef EXAMPLESOURCEFILES
 	$(COPY) $(EXAMPLESOURCEFILES) $(INSTALL_EXAMPLEDIR)
 endif
 ifdef TARGET_EXAMPLEDIRS
-ifndef EXAMPLESOURCEFILES
-	$(MKDIR) $(INSTALL_EXAMPLEDIR)
-endif
 	$(COPYTREE) $(addsuffix /*,$(TARGET_EXAMPLEDIRS)) $(INSTALL_EXAMPLEDIR)
 endif
 fpc_distinstall: fpc_install fpc_exampleinstall
@@ -888,49 +905,96 @@ fpc_info:
 	@$(ECHO)  DIST_DESTDIR......... $(DIST_DESTDIR)
 	@$(ECHO)  DIST_ZIPNAME......... $(DIST_ZIPNAME)
 	@$(ECHO)
-all: fpc_all
-debug: fpc_debug
-examples: fpc_examples
-smart: fpc_smart
-shared: fpc_shared
-sourceinstall: fpc_sourceinstall
-exampleinstall: fpc_exampleinstall
-distinstall: fpc_distinstall
-zipinstall:
-zipsourceinstall:
-zipexampleinstall:
-zipdistinstall:
-cleanall: fpc_cleanall
-info: fpc_info
-.PHONY: all debug examples smart shared sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall cleanall info
+TARGET_DIRS_COMPILER=1
+ifdef TARGET_DIRS_COMPILER
+compiler_all:
+	$(MAKE) -C compiler all
+compiler_debug:
+	$(MAKE) -C compiler debug
+compiler_examples:
+	$(MAKE) -C compiler examples
+compiler_smart:
+	$(MAKE) -C compiler smart
+compiler_shared:
+	$(MAKE) -C compiler shared
+compiler_install:
+	$(MAKE) -C compiler install
+compiler_sourceinstall:
+	$(MAKE) -C compiler sourceinstall
+compiler_exampleinstall:
+	$(MAKE) -C compiler exampleinstall
+compiler_distinstall:
+	$(MAKE) -C compiler distinstall
+compiler_zipinstall:
+	$(MAKE) -C compiler zipinstall
+compiler_zipsourceinstall:
+	$(MAKE) -C compiler zipsourceinstall
+compiler_zipexampleinstall:
+	$(MAKE) -C compiler zipexampleinstall
+compiler_zipdistinstall:
+	$(MAKE) -C compiler zipdistinstall
+compiler_clean:
+	$(MAKE) -C compiler clean
+compiler_distclean:
+	$(MAKE) -C compiler distclean
+compiler_cleanall:
+	$(MAKE) -C compiler cleanall
+compiler_info:
+	$(MAKE) -C compiler info
+compiler:
+	$(MAKE) -C compiler all
+.PHONY: compiler_all compiler_debug compiler_examples compiler_smart compiler_shared compiler_install compiler_sourceinstall compiler_exampleinstall compiler_distinstall compiler_zipinstall compiler_zipsourceinstall compiler_zipexampleinstall compiler_zipdistinstall compiler_clean compiler_distclean compiler_cleanall compiler_info compiler
+endif
+debug: fpc_debug $(addsuffix _debug,$(TARGET_DIRS))
+examples: fpc_examples $(addsuffix _examples,$(TARGET_DIRS))
+smart: fpc_smart $(addsuffix _smart,$(TARGET_DIRS))
+shared: fpc_shared $(addsuffix _shared,$(TARGET_DIRS))
+sourceinstall: fpc_sourceinstall $(addsuffix _sourceinstall,$(TARGET_DIRS))
+exampleinstall: fpc_exampleinstall $(addsuffix _exampleinstall,$(TARGET_DIRS))
+distinstall: fpc_distinstall $(addsuffix _distinstall,$(TARGET_DIRS))
+zipinstall: $(addsuffix _zipinstall,$(TARGET_DIRS))
+zipsourceinstall: $(addsuffix _zipsourceinstall,$(TARGET_DIRS))
+zipexampleinstall: $(addsuffix _zipexampleinstall,$(TARGET_DIRS))
+zipdistinstall: $(addsuffix _zipdistinstall,$(TARGET_DIRS))
+cleanall: fpc_cleanall $(addsuffix _cleanall,$(TARGET_DIRS))
+info: fpc_info $(addsuffix _info,$(TARGET_DIRS))
+.PHONY: debug examples smart shared sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall cleanall info
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif
-.PHONY: gdb full fullgdb clean_compiler clean testgdb postgdbinfo
+.PHONY: compilerunits compilerclean \
+	fake fakegdb gdb full fullgdb \
+	clean_compiler clean testgdb postgdbinfo
 clean: fpc_cleanall
-distclean: clean
+distclean: clean compilerclean
 fp$(EXEEXT): $(wildcard *.pas) $(wildcard *.inc)
 testgdb:
 ifneq ($(GDBFOUND),0)
-	$(ECHO) LibGDB found in $(LIBGDB)
+	@$(ECHO) LibGDB found in $(LIBGDB)
 else
-	$(ECHO) LibGDB not found
-	$(ECHO) LIBGDB=$(LIBGDB)
-	$(ECHO) GDBLIBDIR=$(GDBLIBDIR)
-	$(ECHO) $(wildcard $(addsuffix /libgdb.a,$(GDBLIBDIR)))
+	@$(ECHO) LibGDB not found
+	@$(ECHO) LIBGDB=$(LIBGDB)
+	@$(ECHO) GDBLIBDIR=$(GDBLIBDIR)
+	@$(ECHO) $(wildcard $(addsuffix /libgdb.a,$(GDBLIBDIR)))
 endif
 postgdbinfo:
 ifeq ($(GDBFOUND),0)
-	$(ECHO) LibGDB was not found, IDE has no Debugger support
-else
-	$(ECHO) LibGDB found in $(LIBGDB)
-endif
+	@$(ECHO) LibGDB was not found, IDE has no Debugger support
+endif
+compilerunits : $(COMPILERDIR)/$(FPCMADE)
+$(COMPILERDIR)/$(FPCMADE):
+	$(MAKE) -C $(COMPILERDIR) all
+compilerclean :
+	$(MAKE) -C $(COMPILERDIR) clean
+all: compilerunits fpc_all
 gdb:
 	$(MAKE) testgdb all GDB=1 postgdbinfo
-full:
-	$(MAKE) all FULL=1
-fullgdb:
-	$(MAKE) testgdb all FULL=1 GDB=1 postgdbinfo
+fakegdb:
+	$(MAKE) testgdb all FAKE=1 GDB=1 postgdbinfo
+fake:
+	$(MAKE) all FAKE=1
+full: all
+fullgdb: gdb
 clean: fpc_cleanall
 ifndef UNIXINSTALLDIR
 override DATAINSTALLDIR=$(BININSTALLDIR)

+ 64 - 29
ide/text/Makefile.fpc

@@ -3,6 +3,8 @@
 #
 
 [target]
+# this will be undefined when the fake compiler is used
+dirs=compiler
 programs=fp
 rst=fpstrings
 
@@ -12,6 +14,7 @@ datadir=$(INSTALL_BASEDIR)/ide
 [compiler]
 options=-Sg
 targetdir=.
+unitdir=$(COMPILERDIR)
 
 [require]
 packages=fv gdbint
@@ -19,6 +22,9 @@ packages=fv gdbint
 [libs]
 libgcc=1
 
+[default]
+fpcdir=../..
+
 [prerules]
 ifeq ($(OS_TARGET),linux)
 ifneq ($(findstring 1.0.,$(FPC_VERSION)),)
@@ -32,12 +38,11 @@ override FPCOPT+=-dUNIX
 endif
 endif
 
-# when making a full version include the compiler
-ifeq ($(FULL),1)
-override UNITDIR+=../../compiler ../../compiler/$(CPU_TARGET)
-override INCDIR+=../../compiler ../../compiler/$(CPU_TARGET)
+# Compiler dir
+ifdef FAKE
+COMPILERDIR=../fake/compiler
 else
-override UNITDIR+=../fake/compiler
+COMPILERDIR=compiler
 endif
 
 # when including debugger include the gdbinterface
@@ -45,12 +50,23 @@ ifndef GDBINT
 GDBINT=gdbint
 endif
 
+# Try to find GDB library
 ifeq ($(GDB),1)
-override GDBLIBDIR+=$(PACKAGESDIR)/$(GDBINT)/libgdb/$(OS_TARGET)
-override GDBOBJDIR+=$(PACKAGESDIR)/$(GDBINT)/libgdb/$(OS_TARGET)
+ifeq ($(DEBUG),1)
+# First test if a debug version exists in a specific dir
+ifneq ($(strip $(wildcard $(PACKAGESDIR)/$(GDBINT)/libgdb/d$(OS_TARGET)/libgdb.a)),)
+OSGDBDIR=d$(OS_TARGET)
+else
+OSGDBDIR=$(OS_TARGET)
+endif
+else
+OSGDBDIR=$(OS_TARGET)
+endif
+GDBLIBDIR+=$(wildcard $(addsuffix /$(GDBINT)/libgdb/$(OSGDBDIR),$(PACKAGESDIR)))
+GDBOBJDIR+=$(wildcard $(addsuffix /$(GDBINT)/libgdb/$(OSGDBDIR),$(PACKAGESDIR)))
 ifeq ($(OS_TARGET),go32v2)
 ifneq ($(DJDIR),)
-override GDBLIBDIR+=$(DJDIR)/lib
+GDBLIBDIR+=$(DJDIR)/lib
 endif
 endif
 ifeq ($(strip $(wildcard $(addsuffix /libgdb.a,$(GDBLIBDIR)))),)
@@ -70,48 +86,67 @@ else
 override UNITDIR+=../fake/gdb
 endif
 
-ifeq ($(FULL),1)
-override OPT+=-dBrowserCol -dGDB
-ifeq ($(CPU_TARGET),i386)
-override OPT+=-dSUPPORT_MMX
-endif
-endif
-
 
 [rules]
-.PHONY: gdb full fullgdb clean_compiler clean testgdb postgdbinfo
+.PHONY: compilerunits compilerclean \
+        fake fakegdb gdb full fullgdb \
+        clean_compiler clean testgdb postgdbinfo
 
 clean: fpc_cleanall
 
-distclean: clean
+distclean: clean compilerclean
 
 fp$(EXEEXT): $(wildcard *.pas) $(wildcard *.inc)
 
 testgdb:
 ifneq ($(GDBFOUND),0)
-        $(ECHO) LibGDB found in $(LIBGDB)
+        @$(ECHO) LibGDB found in $(LIBGDB)
 else
-        $(ECHO) LibGDB not found
-        $(ECHO) LIBGDB=$(LIBGDB)
-        $(ECHO) GDBLIBDIR=$(GDBLIBDIR)
-        $(ECHO) $(wildcard $(addsuffix /libgdb.a,$(GDBLIBDIR)))
+        @$(ECHO) LibGDB not found
+        @$(ECHO) LIBGDB=$(LIBGDB)
+        @$(ECHO) GDBLIBDIR=$(GDBLIBDIR)
+        @$(ECHO) $(wildcard $(addsuffix /libgdb.a,$(GDBLIBDIR)))
 endif
 
 postgdbinfo:
 ifeq ($(GDBFOUND),0)
-        $(ECHO) LibGDB was not found, IDE has no Debugger support
-else
-        $(ECHO) LibGDB found in $(LIBGDB)
+        @$(ECHO) LibGDB was not found, IDE has no Debugger support
 endif
 
+#
+# Compiler
+#
+
+compilerunits : $(COMPILERDIR)/$(FPCMADE)
+$(COMPILERDIR)/$(FPCMADE):
+        $(MAKE) -C $(COMPILERDIR) all
+
+compilerclean :
+        $(MAKE) -C $(COMPILERDIR) clean
+
+#
+# Default targets
+#
+all: compilerunits fpc_all
+
 gdb:
         $(MAKE) testgdb all GDB=1 postgdbinfo
 
-full:
-        $(MAKE) all FULL=1
+#
+# Fake targets
+#
+fakegdb:
+        $(MAKE) testgdb all FAKE=1 GDB=1 postgdbinfo
+
+fake:
+        $(MAKE) all FAKE=1
+
+#
+# Compatibility targets
+#
+full: all
 
-fullgdb:
-        $(MAKE) testgdb all FULL=1 GDB=1 postgdbinfo
+fullgdb: gdb
 
 # This is necessary because we don't have all units separate in the
 # units targets

+ 831 - 0
ide/text/compiler/Makefile

@@ -0,0 +1,831 @@
+#
+# Don't edit, this file is generated by fpcmake v1.99.0 [2001/04/25]
+#
+default: all
+override PATH:=$(subst \,/,$(PATH))
+ifeq ($(findstring ;,$(PATH)),)
+inUnix=1
+SEARCHPATH:=$(subst :, ,$(PATH))
+else
+SEARCHPATH:=$(subst ;, ,$(PATH))
+endif
+PWD:=$(strip $(wildcard $(addsuffix /pwd.exe,$(SEARCHPATH))))
+ifeq ($(PWD),)
+PWD:=$(strip $(wildcard $(addsuffix /pwd,$(SEARCHPATH))))
+ifeq ($(PWD),)
+nopwd:
+	@echo You need the GNU utils package to use this Makefile!
+	@echo Get ftp://ftp.freepascal.org/pub/fpc/dist/go32v2/utilgo32.zip
+	@exit
+else
+PWD:=$(firstword $(PWD))
+SRCEXEEXT=
+endif
+else
+PWD:=$(firstword $(PWD))
+SRCEXEEXT=.exe
+endif
+ifndef inUnix
+ifeq ($(OS),Windows_NT)
+inWinNT=1
+else
+ifdef OS2_SHELL
+inOS2=1
+endif
+endif
+else
+ifneq ($(findstring cygwin,$(MACH_TYPE)),)
+inCygWin=1
+endif
+endif
+ifdef inUnix
+BATCHEXT=.sh
+else
+ifdef inOS2
+BATCHEXT=.cmd
+else
+BATCHEXT=.bat
+endif
+endif
+ifdef inUnix
+PATHSEP=/
+else
+PATHSEP:=$(subst /,\,/)
+endif
+ifdef PWD
+BASEDIR:=$(shell $(PWD))
+else
+BASEDIR=.
+endif
+ifndef FPC
+ifdef PP
+FPC=$(PP)
+else
+FPC=ppc386
+endif
+endif
+override FPC:=$(subst $(SRCEXEEXT),,$(FPC))
+override FPC:=$(subst \,/,$(FPC))$(SRCEXEEXT)
+ifndef OS_TARGET
+OS_TARGET:=$(shell $(FPC) -iTO)
+endif
+ifndef OS_SOURCE
+OS_SOURCE:=$(shell $(FPC) -iSO)
+endif
+ifndef CPU_TARGET
+CPU_TARGET:=$(shell $(FPC) -iTP)
+endif
+ifndef CPU_SOURCE
+CPU_SOURCE:=$(shell $(FPC) -iSP)
+endif
+ifndef FPC_VERSION
+FPC_VERSION:=$(shell $(FPC) -iV)
+endif
+export FPC OS_TARGET OS_SOURCE CPU_TARGET CPU_SOURCE FPC_VERSION
+ifdef FPCDIR
+override FPCDIR:=$(subst \,/,$(FPCDIR))
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
+override FPCDIR=wrong
+endif
+else
+override FPCDIR=wrong
+endif
+ifeq ($(FPCDIR),wrong)
+override FPCDIR=../../..
+ifeq ($(wildcard $(FPCDIR)/rtl),)
+ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR=wrong
+endif
+endif
+endif
+ifeq ($(FPCDIR),wrong)
+ifdef inUnix
+override FPCDIR=/usr/local/lib/fpc/$(FPC_VERSION)
+ifeq ($(wildcard $(FPCDIR)/units),)
+override FPCDIR=/usr/lib/fpc/$(FPC_VERSION)
+endif
+else
+override FPCDIR:=$(subst /$(FPC),,$(firstword $(strip $(wildcard $(addsuffix /$(FPC),$(SEARCHPATH))))))
+override FPCDIR:=$(FPCDIR)/..
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
+override FPCDIR:=$(FPCDIR)/..
+ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
+override FPCDIR=c:/pp
+endif
+endif
+endif
+endif
+UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
+PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages)
+override TARGET_UNITS+=compunit
+override COMPILER_OPTIONS+=-Ca
+override COMPILER_INCLUDEDIR+=$(FPCDIR)/compiler $(FPCDIR)/compiler/$(CPU_TARGET)
+override COMPILER_UNITDIR+=$(FPCDIR)/compiler $(FPCDIR)/compiler/$(CPU_TARGET) $(FPCDIR)/compiler/targets
+override COMPILER_TARGETDIR+=.
+ifndef ECHO
+ECHO:=$(strip $(wildcard $(addsuffix /gecho$(EXEEXT),$(SEARCHPATH))))
+ifeq ($(ECHO),)
+ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH))))
+ifeq ($(ECHO),)
+ECHO:=echo
+else
+ECHO:=$(firstword $(ECHO))
+endif
+else
+ECHO:=$(firstword $(ECHO))
+endif
+endif
+ifndef COPY
+COPY:=cp -fp
+endif
+ifndef COPYTREE
+COPYTREE:=cp -rfp
+endif
+ifndef MOVE
+MOVE:=mv -f
+endif
+ifndef DEL
+DEL:=rm -f
+endif
+ifndef DELTREE
+DELTREE:=rm -rf
+endif
+ifndef INSTALL
+ifdef inUnix
+INSTALL:=install -c -m 644
+else
+INSTALL:=$(COPY)
+endif
+endif
+ifndef INSTALLEXE
+ifdef inUnix
+INSTALLEXE:=install -c -m 755
+else
+INSTALLEXE:=$(COPY)
+endif
+endif
+ifndef MKDIR
+ifdef inUnix
+MKDIR:=install -m 755 -d
+else
+MKDIR:=ginstall -m 755 -d
+endif
+endif
+export ECHO COPY COPYTREE MOVE DEL DELTREE INSTALL INSTALLEXE MKDIR
+ifndef AS
+AS=as
+endif
+ifndef LD
+LD=ld
+endif
+ifndef RC
+RC=rc
+endif
+PPAS=ppas$(BATCHEXT)
+ifdef inUnix
+LDCONFIG=ldconfig
+else
+LDCONFIG=
+endif
+ifndef PPUMOVE
+PPUMOVE:=$(strip $(wildcard $(addsuffix /ppumove$(SRCEXEEXT),$(SEARCHPATH))))
+ifeq ($(PPUMOVE),)
+PPUMOVE=
+else
+PPUMOVE:=$(firstword $(PPUMOVE))
+endif
+endif
+export PPUMOVE
+ifndef PPUFILES
+PPUFILES:=$(strip $(wildcard $(addsuffix /ppufiles$(SRCEXEEXT),$(SEARCHPATH))))
+ifeq ($(PPUFILES),)
+PPUFILES=
+else
+PPUFILES:=$(firstword $(PPUFILES))
+endif
+endif
+export PPUFILES
+ifndef DATE
+DATE:=$(strip $(wildcard $(addsuffix /date$(SRCEXEEXT),$(SEARCHPATH))))
+ifeq ($(DATE),)
+DATE:=$(strip $(wildcard $(addsuffix /gdate$(SRCEXEEXT),$(SEACHPATH))))
+ifeq ($(DATE),)
+DATE=
+else
+DATE:=$(firstword $(DATE))
+endif
+else
+DATE:=$(firstword $(DATE))
+endif
+endif
+export DATE
+ifdef DATE
+DATESTR:=$(shell $(DATE) +%Y%m%d)
+else
+DATESTR=
+endif
+ifndef UPXPROG
+ifeq ($(OS_TARGET),go32v2)
+UPXPROG:=1
+endif
+ifeq ($(OS_TARGET),win32)
+UPXPROG:=1
+endif
+ifdef UPXPROG
+UPXPROG:=$(strip $(wildcard $(addsuffix /upx$(SRCEXEEXT),$(SEARCHPATH))))
+ifeq ($(UPXPROG),)
+UPXPROG=
+else
+UPXPROG:=$(firstword $(UPXPROG))
+endif
+else
+UPXPROG=
+endif
+endif
+export UPXPROG
+ifndef ZIPPROG
+ZIPPROG:=$(strip $(wildcard $(addsuffix /zip$(SRCEXEEXT),$(SEARCHPATH))))
+ifeq ($(ZIPPROG),)
+ZIPPROG=
+else
+ZIPPROG:=$(firstword $(ZIPPROG))
+endif
+endif
+export ZIPPROG
+ZIPOPT=-9
+ZIPEXT=.zip
+ifndef TARPROG
+TARPROG:=$(strip $(wildcard $(addsuffix /tar$(SRCEXEEXT),$(SEARCHPATH))))
+ifeq ($(TARPROG),)
+TARPROG=
+else
+TARPROG:=$(firstword $(TARPROG))
+endif
+endif
+export TARPROG
+ifeq ($(USETAR),bz2)
+TAROPT=vI
+TAREXT=.tar.bz2
+else
+TAROPT=vz
+TAREXT=.tar.gz
+endif
+LOADEREXT=.as
+EXEEXT=.exe
+PPLEXT=.ppl
+PPUEXT=.ppu
+OEXT=.o
+ASMEXT=.s
+SMARTEXT=.sl
+STATICLIBEXT=.a
+SHAREDLIBEXT=.so
+LIBPREFIX=lib
+RSTEXT=.rst
+FPCMADE=fpcmade
+ifeq ($(OS_TARGET),go32v1)
+PPUEXT=.pp1
+OEXT=.o1
+ASMEXT=.s1
+SMARTEXT=.sl1
+STATICLIBEXT=.a1
+SHAREDLIBEXT=.so1
+LIBPREFIX=
+FPCMADE=fpcmade.v1
+PACKAGESUFFIX=v1
+endif
+ifeq ($(OS_TARGET),go32v2)
+LIBPREFIX=
+FPCMADE=fpcmade.dos
+ZIPSUFFIX=go32
+endif
+ifeq ($(OS_TARGET),linux)
+EXEEXT=
+HASSHAREDLIB=1
+FPCMADE=fpcmade.lnx
+ZIPSUFFIX=linux
+endif
+ifeq ($(OS_TARGET),freebsd)
+EXEEXT=
+HASSHAREDLIB=1
+FPCMADE=fpcmade.freebsd
+ZIPSUFFIX=freebsd
+endif
+ifeq ($(OS_TARGET),win32)
+PPUEXT=.ppw
+OEXT=.ow
+ASMEXT=.sw
+SMARTEXT=.slw
+STATICLIBEXT=.aw
+SHAREDLIBEXT=.dll
+FPCMADE=fpcmade.w32
+ZIPSUFFIX=w32
+endif
+ifeq ($(OS_TARGET),os2)
+PPUEXT=.ppo
+ASMEXT=.so2
+OEXT=.oo2
+AOUTEXT=.out
+SMARTEXT=.so
+STATICLIBEXT=.ao2
+SHAREDLIBEXT=.dll
+FPCMADE=fpcmade.os2
+ZIPSUFFIX=emx
+endif
+ifdef REQUIRE_UNITSDIR
+override UNITSDIR+=$(REQUIRE_UNITSDIR)
+endif
+ifdef REQUIRE_PACKAGESDIR
+override PACKAGESDIR+=$(REQUIRE_PACKAGESDIR)
+endif
+ifdef ZIPINSTALL
+ifeq ($(OS_TARGET),linux)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_TARGET),freebsd)
+UNIXINSTALLDIR=1
+endif
+else
+ifeq ($(OS_SOURCE),linux)
+UNIXINSTALLDIR=1
+endif
+ifeq ($(OS_SOURCE),freebsd)
+UNIXINSTALLDIR=1
+endif
+endif
+ifndef INSTALL_PREFIX
+ifdef UNIXINSTALLDIR
+INSTALL_PREFIX=/usr/local
+else
+INSTALL_PREFIX=/pp
+endif
+endif
+export INSTALL_PREFIX
+ifndef DIST_DESTDIR
+DIST_DESTDIR:=$(BASEDIR)
+endif
+export DIST_DESTDIR
+ifndef INSTALL_BASEDIR
+ifdef UNIXINSTALLDIR
+INSTALL_BASEDIR=$(INSTALL_PREFIX)/lib/fpc/$(FPC_VERSION)
+else
+INSTALL_BASEDIR=$(INSTALL_PREFIX)
+endif
+endif
+ifndef INSTALL_BINDIR
+ifdef UNIXINSTALLDIR
+INSTALL_BINDIR=$(INSTALL_PREFIX)/bin
+else
+INSTALL_BINDIR=$(INSTALL_BASEDIR)/bin/$(OS_TARGET)
+endif
+endif
+ifndef INSTALL_UNITDIR
+INSTALL_UNITDIR=$(INSTALL_BASEDIR)/units/$(OS_TARGET)
+ifdef PACKAGE_NAME
+INSTALL_UNITDIR:=$(INSTALL_UNITDIR)/$(PACKAGE_NAME)
+endif
+endif
+ifndef INSTALL_LIBDIR
+ifdef UNIXINSTALLDIR
+INSTALL_LIBDIR=$(INSTALL_PREFIX)/lib
+else
+INSTALL_LIBDIR=$(INSTALL_UNITDIR)
+endif
+endif
+ifndef INSTALL_SOURCEDIR
+ifdef UNIXINSTALLDIR
+INSTALL_SOURCEDIR=$(INSTALL_PREFIX)/src/fpc-$(FPC_VERSION)
+else
+INSTALL_SOURCEDIR=$(INSTALL_BASEDIR)/source
+endif
+ifdef PACKAGE_NAME
+INSTALL_SOURCEDIR:=$(INSTALL_SOURCEDIR)/$(PACKAGE_NAME)
+endif
+endif
+ifndef INSTALL_DOCDIR
+ifdef UNIXINSTALLDIR
+INSTALL_DOCDIR=$(INSTALL_PREFIX)/doc/fpc-$(FPC_VERSION)
+else
+INSTALL_DOCDIR=$(INSTALL_BASEDIR)/doc
+endif
+endif
+ifndef INSTALL_EXAMPLEDIR
+ifdef UNIXINSTALLDIR
+INSTALL_EXAMPLEDIR=$(INSTALL_DOCDIR)/examples
+else
+INSTALL_EXAMPLEDIR=$(INSTALL_BASEDIR)/examples
+endif
+ifdef EXAMPLESUBDIR
+INSTALL_EXAMPLEDIR:=$(INSTALL_EXAMPLEDIR)/$(EXAMPLESUBDIR)
+endif
+endif
+ifndef INSTALL_DATADIR
+INSTALL_DATADIR=$(INSTALL_BASEDIR)
+endif
+ifeq ($(OS_TARGET),linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_FV=1
+endif
+ifeq ($(OS_TARGET),go32v2)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_FV=1
+endif
+ifeq ($(OS_TARGET),win32)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_FV=1
+endif
+ifeq ($(OS_TARGET),os2)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_FV=1
+endif
+ifeq ($(OS_TARGET),freebsd)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_FV=1
+endif
+ifdef REQUIRE_PACKAGES_RTL
+PACKAGEDIR_RTL:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))
+ifneq ($(PACKAGEDIR_RTL),)
+PACKAGEDIR_RTL:=$(firstword $(PACKAGEDIR_RTL))
+ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
+override COMPILEPACKAGES+=package_rtl
+package_rtl:
+	$(MAKE) -C $(PACKAGEDIR_RTL) all
+endif
+ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
+UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
+else
+UNITDIR_RTL=$(PACKAGEDIR_RTL)
+endif
+else
+PACKAGEDIR_RTL=
+UNITDIR_RTL:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /rtl/Package.fpc,$(UNITSDIR)))))
+ifneq ($(UNITDIR_RTL),)
+UNITDIR_RTL:=$(firstword $(UNITDIR_RTL))
+else
+UNITDIR_RTL=
+endif
+endif
+ifdef UNITDIR_RTL
+override COMPILER_UNITDIR+=$(UNITDIR_RTL)
+endif
+endif
+ifdef REQUIRE_PACKAGES_FV
+PACKAGEDIR_FV:=$(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fv/Makefile.fpc,$(PACKAGESDIR)))))
+ifneq ($(PACKAGEDIR_FV),)
+PACKAGEDIR_FV:=$(firstword $(PACKAGEDIR_FV))
+ifeq ($(wildcard $(PACKAGEDIR_FV)/$(FPCMADE)),)
+override COMPILEPACKAGES+=package_fv
+package_fv:
+	$(MAKE) -C $(PACKAGEDIR_FV) all
+endif
+ifneq ($(wildcard $(PACKAGEDIR_FV)/$(OS_TARGET)),)
+UNITDIR_FV=$(PACKAGEDIR_FV)/$(OS_TARGET)
+else
+UNITDIR_FV=$(PACKAGEDIR_FV)
+endif
+else
+PACKAGEDIR_FV=
+UNITDIR_FV:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /fv/Package.fpc,$(UNITSDIR)))))
+ifneq ($(UNITDIR_FV),)
+UNITDIR_FV:=$(firstword $(UNITDIR_FV))
+else
+UNITDIR_FV=
+endif
+endif
+ifdef UNITDIR_FV
+override COMPILER_UNITDIR+=$(UNITDIR_FV)
+endif
+endif
+.PHONY: package_rtl package_fv
+override FPCOPTDEF=$(CPU_TARGET)
+ifneq ($(OS_TARGET),$(OS_SOURCE))
+override FPCOPT+=-T$(OS_TARGET)
+endif
+ifdef UNITDIR
+override FPCOPT+=$(addprefix -Fu,$(UNITDIR))
+endif
+ifdef LIBDIR
+override FPCOPT+=$(addprefix -Fl,$(LIBDIR))
+endif
+ifdef OBJDIR
+override FPCOPT+=$(addprefix -Fo,$(OBJDIR))
+endif
+ifdef INCDIR
+override FPCOPT+=$(addprefix -Fi,$(INCDIR))
+endif
+ifdef LINKSMART
+override FPCOPT+=-XX
+endif
+ifdef CREATESMART
+override FPCOPT+=-CX
+endif
+ifdef DEBUG
+override FPCOPT+=-gl
+override FPCOPTDEF+=DEBUG
+endif
+ifdef RELEASE
+override FPCOPT+=-Xs -OG2p3 -n
+override FPCOPTDEF+=RELEASE
+endif
+ifdef STRIP
+override FPCOPT+=-Xs
+endif
+ifdef OPTIMIZE
+override FPCOPT+=-OG2p3
+endif
+ifdef VERBOSE
+override FPCOPT+=-vwni
+endif
+ifdef COMPILER_OPTIONS
+override FPCOPT+=$(COMPILER_OPTIONS)
+endif
+ifdef COMPILER_UNITDIR
+override FPCOPT+=$(addprefix -Fu,$(COMPILER_UNITDIR))
+endif
+ifdef COMPILER_LIBRARYDIR
+override FPCOPT+=$(addprefix -Fl,$(COMPILER_LIBRARYDIR))
+endif
+ifdef COMPILER_OBJECTDIR
+override FPCOPT+=$(addprefix -Fo,$(COMPILER_OBJECTDIR))
+endif
+ifdef COMPILER_INCLUDEDIR
+override FPCOPT+=$(addprefix -Fi,$(COMPILER_INCLUDEDIR))
+endif
+ifdef COMPILER_TARGETDIR
+override FPCOPT+=-FE$(COMPILER_TARGETDIR)
+ifeq ($(COMPILER_TARGETDIR),.)
+override TARGETDIRPREFIX=
+else
+override TARGETDIRPREFIX=$(COMPILER_TARGETDIR)/
+endif
+endif
+ifdef COMPILER_UNITTARGETDIR
+override FPCOPT+=-FU$(COMPILER_UNITTARGETDIR)
+ifeq ($(COMPILER_UNITTARGETDIR),.)
+override UNITTARGETDIRPREFIX=
+else
+override UNITTARGETDIRPREFIX=$(COMPILER_TARGETDIR)/
+endif
+else
+ifdef COMPILER_TARGETDIR
+override COMPILER_UNITTARGETDIR=$(COMPILER_TARGETDIR)
+override UNITTARGETDIRPREFIX=$(TARGETDIRPREFIX)
+endif
+endif
+ifdef OPT
+override FPCOPT+=$(OPT)
+endif
+ifdef FPCOPTDEF
+override FPCOPT+=$(addprefix -d,$(FPCOPTDEF))
+endif
+ifdef CFGFILE
+override FPCOPT+=@$(CFGFILE)
+endif
+ifeq ($(OS_SOURCE),win32)
+USEENV=1
+endif
+ifdef USEENV
+override FPCEXTCMD:=$(FPCOPT)
+override FPCOPT:=!FPCEXTCMD
+export FPCEXTCMD
+endif
+override COMPILER:=$(FPC) $(FPCOPT)
+ifeq (,$(findstring -s ,$(COMPILER)))
+EXECPPAS=
+else
+ifeq ($(OS_SOURCE),$(OS_TARGET))
+EXECPPAS:=@$(PPAS)
+endif
+endif
+.PHONY: fpc_units
+ifdef TARGET_UNITS
+override ALLTARGET+=fpc_units
+override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
+override INSTALLPPUFILES+=$(UNITPPUFILES)
+override CLEANPPUFILES+=$(UNITPPUFILES)
+endif
+fpc_units: $(UNITPPUFILES)
+.PHONY: fpc_packages fpc_all fpc_smart fpc_debug
+$(FPCMADE): $(ALLTARGET)
+	@$(ECHO) Compiled > $(FPCMADE)
+fpc_packages: $(COMPILEPACKAGES)
+fpc_all: fpc_packages $(FPCMADE)
+fpc_smart:
+	$(MAKE) all LINKSMART=1 CREATESMART=1
+fpc_debug:
+	$(MAKE) all DEBUG=1
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
+%$(PPUEXT): %.pp
+	$(COMPILER) $<
+	$(EXECPPAS)
+%$(PPUEXT): %.pas
+	$(COMPILER) $<
+	$(EXECPPAS)
+%$(EXEEXT): %.pp
+	$(COMPILER) $<
+	$(EXECPPAS)
+%$(EXEEXT): %.pas
+	$(COMPILER) $<
+	$(EXECPPAS)
+vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
+vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
+vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
+.PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall
+ifdef INSTALL_UNITS
+override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(INSTALL_UNITS))
+endif
+ifdef INSTALLPPUFILES
+ifdef PPUFILES
+override INSTALLPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPUFILES))
+override INSTALLPPULINKFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES)))
+else
+override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(LIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
+override INSTALLPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPUFILES))
+override INSTALLPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPULINKFILES)))
+endif
+endif
+ifdef INSTALLEXEFILES
+override INSTALLEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(INSTALLEXEFILES))
+endif
+fpc_install: $(INSTALLTARGET)
+ifdef INSTALLEXEFILES
+	$(MKDIR) $(INSTALL_BINDIR)
+ifdef UPXPROG
+	-$(UPXPROG) $(INSTALLEXEFILES)
+endif
+	$(INSTALLEXE) $(INSTALLEXEFILES) $(INSTALL_BINDIR)
+endif
+ifdef INSTALLPPUFILES
+	$(MKDIR) $(INSTALL_UNITDIR)
+	$(INSTALL) $(INSTALLPPUFILES) $(INSTALL_UNITDIR)
+ifneq ($(INSTALLPPULINKFILES),)
+	$(INSTALL) $(INSTALLPPULINKFILES) $(INSTALL_UNITDIR)
+endif
+ifneq ($(wildcard $(LIB_FULLNAME)),)
+	$(MKDIR) $(INSTALL_LIBDIR)
+	$(INSTALL) $(LIB_FULLNAME) $(INSTALL_LIBDIR)
+ifdef inUnix
+	ln -sf $(LIB_FULLNAME) $(INSTALL_LIBDIR)/$(LIB_NAME)
+endif
+endif
+endif
+ifdef INSTALL_FILES
+	$(MKDIR) $(INSTALL_DATADIR)
+	$(INSTALL) $(INSTALL_FILES) $(INSTALL_DATADIR)
+endif
+fpc_sourceinstall: distclean
+	$(MKDIR) $(INSTALL_SOURCEDIR)
+	$(COPYTREE) $(BASEDIR) $(INSTALL_SOURCEDIR)
+fpc_exampleinstall: $(addsuffix _distclean,$(TARGET_EXAMPLEDIRS))
+ifdef HASEXAMPLES
+	$(MKDIR) $(INSTALL_EXAMPLEDIR)
+endif
+ifdef EXAMPLESOURCEFILES
+	$(COPY) $(EXAMPLESOURCEFILES) $(INSTALL_EXAMPLEDIR)
+endif
+ifdef TARGET_EXAMPLEDIRS
+	$(COPYTREE) $(addsuffix /*,$(TARGET_EXAMPLEDIRS)) $(INSTALL_EXAMPLEDIR)
+endif
+fpc_distinstall: fpc_install fpc_exampleinstall
+.PHONY: fpc_clean fpc_cleanall fpc_distclean
+ifdef EXEFILES
+override CLEANEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(CLEANEXEFILES))
+endif
+ifdef CLEAN_UNITS
+override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
+endif
+ifdef CLEANPPUFILES
+override CLEANPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILES))
+ifdef PPUFILES
+CLEANPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES))
+else
+CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(LIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES))))
+endif
+override CLEANPPULINKFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILES))
+endif
+fpc_clean: $(CLEANTARGET)
+ifdef CLEANEXEFILES
+	-$(DEL) $(CLEANEXEFILES)
+endif
+ifdef CLEANPPUFILES
+	-$(DEL) $(CLEANPPUFILES)
+endif
+ifneq ($(CLEANPPULINKFILES),)
+	-$(DEL) $(CLEANPPULINKFILES)
+endif
+ifdef CLEANRSTFILES
+	-$(DEL) $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANRSTFILES))
+endif
+ifdef CLEAN_FILES
+	-$(DEL) $(CLEAN_FILES)
+endif
+ifdef LIB_NAME
+	-$(DEL) $(LIB_NAME) $(LIB_FULLNAME)
+endif
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+fpc_distclean: fpc_clean
+ifdef COMPILER_UNITTARGETDIR
+TARGETDIRCLEAN=fpc_clean
+endif
+fpc_cleanall: $(CLEANTARGET) $(TARGETDIRCLEAN)
+ifdef CLEANEXEFILES
+	-$(DEL) $(CLEANEXEFILES)
+endif
+	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
+	-$(DELTREE) *$(SMARTEXT)
+	-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
+ifdef AOUTEXT
+	-$(DEL) *$(AOUTEXT)
+endif
+.PHONY: fpc_info
+fpc_info:
+	@$(ECHO)
+	@$(ECHO)  == Package info ==
+	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
+	@$(ECHO)  Package Version.. $(PACKAGE_VERSION)
+	@$(ECHO)
+	@$(ECHO)  == Configuration info ==
+	@$(ECHO)
+	@$(ECHO)  FPC.......... $(FPC)
+	@$(ECHO)  FPC Version.. $(FPC_VERSION)
+	@$(ECHO)  Source CPU... $(CPU_SOURCE)
+	@$(ECHO)  Target CPU... $(CPU_TARGET)
+	@$(ECHO)  Source OS.... $(OS_SOURCE)
+	@$(ECHO)  Target OS.... $(OS_TARGET)
+	@$(ECHO)
+	@$(ECHO)  == Directory info ==
+	@$(ECHO)
+	@$(ECHO)  Basedir......... $(BASEDIR)
+	@$(ECHO)  FPCDir.......... $(FPCDIR)
+	@$(ECHO)  UnitsDir........ $(UNITSDIR)
+	@$(ECHO)  PackagesDir..... $(PACKAGESDIR)
+	@$(ECHO)
+	@$(ECHO)  GCC library..... $(GCCLIBDIR)
+	@$(ECHO)  Other library... $(OTHERLIBDIR)
+	@$(ECHO)
+	@$(ECHO)  == Tools info ==
+	@$(ECHO)
+	@$(ECHO)  Pwd....... $(PWD)
+	@$(ECHO)  Echo...... $(ECHO)
+	@$(ECHO)  PPUMove... $(PPUMOVE)
+	@$(ECHO)  PPUFiles.. $(PPUFILES)
+	@$(ECHO)  Date...... $(DATE)
+	@$(ECHO)  Upx....... $(UPXPROG)
+	@$(ECHO)  Zip....... $(ZIPPROG)
+	@$(ECHO)
+	@$(ECHO)  == Object info ==
+	@$(ECHO)
+	@$(ECHO)  Target Loaders...... $(TARGET_LOADERS)
+	@$(ECHO)  Target Units........ $(TARGET_UNITS)
+	@$(ECHO)  Target Programs..... $(TARGET_PROGRAMS)
+	@$(ECHO)  Target Dirs......... $(TARGET_DIRS)
+	@$(ECHO)  Target Examples..... $(TARGET_EXAMPLES)
+	@$(ECHO)  Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
+	@$(ECHO)
+	@$(ECHO)  Clean Units......... $(CLEAN_UNITS)
+	@$(ECHO)  Clean Files......... $(CLEAN_FILES)
+	@$(ECHO)
+	@$(ECHO)  Install Units....... $(INSTALL_UNITS)
+	@$(ECHO)  Install Files....... $(INSTALL_FILES)
+	@$(ECHO)
+	@$(ECHO)  == Install info ==
+	@$(ECHO)
+	@$(ECHO)  DateStr.............. $(DATESTR)
+	@$(ECHO)  ZipPrefix............ $(ZIPPREFIX)
+	@$(ECHO)  ZipSuffix............ $(ZIPSUFFIX)
+	@$(ECHO)
+	@$(ECHO)  INSTALL_BASEDIR...... $(INSTALL_BASEDIR)
+	@$(ECHO)  INSTALL_BINDIR....... $(INSTALL_BINDIR)
+	@$(ECHO)  INSTALL_LIBDIR....... $(INSTALL_LIBDIR)
+	@$(ECHO)  INSTALL_UNITDIR...... $(INSTALL_UNITDIR)
+	@$(ECHO)  INSTALL_SOURCEDIR.... $(INSTALL_SOURCEDIR)
+	@$(ECHO)  INSTALL_DOCDIR....... $(INSTALL_DOCDIR)
+	@$(ECHO)  INSTALL_DATADIR...... $(INSTALL_DATADIR)
+	@$(ECHO)
+	@$(ECHO)  DIST_DESTDIR......... $(DIST_DESTDIR)
+	@$(ECHO)  DIST_ZIPNAME......... $(DIST_ZIPNAME)
+	@$(ECHO)
+debug: fpc_debug
+examples: fpc_examples
+smart: fpc_smart
+shared: fpc_shared
+install: fpc_install
+sourceinstall: fpc_sourceinstall
+exampleinstall: fpc_exampleinstall
+distinstall: fpc_distinstall
+zipinstall:
+zipsourceinstall:
+zipexampleinstall:
+zipdistinstall:
+distclean: fpc_distclean
+cleanall: fpc_cleanall
+info: fpc_info
+.PHONY: debug examples smart shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall distclean cleanall info
+ifneq ($(wildcard fpcmake.loc),)
+include fpcmake.loc
+endif
+override COMPILER+=-dBrowserCol -dGDB -Fu.. -Fi..
+ifeq ($(CPU_TARGET),i386)
+override COMPILER+=-dSUPPORT_MMX
+endif
+all: fpc_all
+clean: cleanall

+ 28 - 0
ide/text/compiler/Makefile.fpc

@@ -0,0 +1,28 @@
+#
+#   Makefile.fpc for Compiler units for IDE inclusion
+#
+
+[target]
+units=compunit
+
+[require]
+packages=fv
+
+[compiler]
+options=-Ca
+targetdir=.
+unitdir=$(FPCDIR)/compiler $(FPCDIR)/compiler/$(CPU_TARGET) $(FPCDIR)/compiler/targets
+includedir=$(FPCDIR)/compiler $(FPCDIR)/compiler/$(CPU_TARGET)
+
+[default]
+fpcdir=../../..
+
+[rules]
+override COMPILER+=-dBrowserCol -dGDB -Fu.. -Fi..
+ifeq ($(CPU_TARGET),i386)
+override COMPILER+=-dSUPPORT_MMX
+endif
+
+all: fpc_all
+
+clean: cleanall

+ 28 - 0
ide/text/compiler/compunit.pas

@@ -0,0 +1,28 @@
+{
+  $Id$
+
+  Build file for the compiler units. This is also a unit so
+  that there will be no linking
+}
+unit compunit;
+interface
+uses
+  compiler,
+  comphook,
+  cpuinfo,
+  browcol;
+
+implementation
+end.
+{
+  $Log$
+  Revision 1.2  2001-04-25 22:38:38  peter
+    * updates from fixes branch so fpcmake for Makefiles works
+
+  Revision 1.1.2.2  2001/03/20 00:20:44  pierre
+   * fix some memory leaks + several small enhancements
+
+  Revision 1.1.2.1  2001/01/07 22:32:33  peter
+    * build all compiler units for IDE inclusion
+
+}