Bladeren bron

Merged revisions 2396,2600,2942,3445 via svnmerge from
http://[email protected]/svn/fpc/trunk

........
r2396 | florian | 2006-02-01 22:52:32 +0100 (Wed, 01 Feb 2006) | 2 lines

+ arm-palmos

........
r2600 | florian | 2006-02-15 22:14:41 +0100 (Wed, 15 Feb 2006) | 1 line

* search for gtar first
........
r2942 | jonas | 2006-03-17 18:52:43 +0100 (Fri, 17 Mar 2006) | 2 lines

* -O1r -> -O2 for ppc release

........
r3445 | peter | 2006-05-07 10:14:04 +0200 (Sun, 07 May 2006) | 2 lines

* win64 lcl

........

git-svn-id: branches/fixes_2_0@3965 -

peter 19 jaren geleden
bovenliggende
commit
9bafba7029
4 gewijzigde bestanden met toevoegingen van 243 en 223 verwijderingen
  1. 209 198
      utils/fpcm/fpcmake.inc
  2. 26 20
      utils/fpcm/fpcmake.ini
  3. 7 4
      utils/fpcm/fpcmmain.pp
  4. 1 1
      utils/fpcm/fpcmwr.pp

File diff suppressed because it is too large
+ 209 - 198
utils/fpcm/fpcmake.inc


+ 26 - 20
utils/fpcm/fpcmake.ini

@@ -743,6 +743,7 @@ STATICLIBEXT=.a
 SHAREDLIBEXT=.so
 SHAREDLIBPREFIX=libfp
 STATICLIBPREFIX=libp
+IMPORTLIBPREFIX=libimp
 RSTEXT=.rst
 #DEBUGSYMEXT #for debugger symbol files, define only for targets which has this
 
@@ -900,6 +901,13 @@ HASSHAREDLIB=1
 SHORTSUFFIX=dwn
 endif
 
+# gba
+ifeq ($(OS_TARGET),gba)
+EXEEXT=.gba
+SHAREDLIBEXT=.so
+SHORTSUFFIX=gba
+endif
+
 else
 # long version for 1.0.x - target specific extensions
 
@@ -1238,6 +1246,10 @@ ifneq ($(OS_TARGET),$(OS_SOURCE))
 override FPCOPT+=-T$(OS_TARGET)
 endif
 
+ifneq ($(CPU_TARGET),$(CPU_SOURCE))
+override FPCOPT+=-P$(CPU_TARGET)
+endif
+
 ifeq ($(OS_SOURCE),openbsd)
 override FPCOPT+=-FD$(NEW_BINUTILS_PATH)
 endif
@@ -1281,16 +1293,19 @@ override FPCOPT+=-gl
 override FPCOPTDEF+=DEBUG
 endif
 
-# Release mode (strip, optimize and don't load fpc.cfg)
+# Release mode
+# (strip, optimize and don't load fpc.cfg)
+# fpc 2.1 has -O2 for all targets
 ifdef RELEASE
+ifneq ($(findstring 2.0.,$(FPC_VERSION)),)
 ifeq ($(CPU_TARGET),i386)
 FPCCPUOPT:=-OG2p3
-else
+endif
 ifeq ($(CPU_TARGET),powerpc)
 FPCCPUOPT:=-O1r
-else
-FPCCPUOPT:=
 endif
+else
+FPCCPUOPT:=-O2
 endif
 override FPCOPT+=-Ur -Xs $(FPCCPUOPT) -n
 override FPCOPTDEF+=RELEASE
@@ -1301,11 +1316,9 @@ ifdef STRIP
 override FPCOPT+=-Xs
 endif
 
-# Optimizer (i386 only for now)
+# Optimizer
 ifdef OPTIMIZE
-ifeq ($(CPU_TARGET),i386)
-override FPCOPT+=-OG2p3
-endif
+override FPCOPT+=-O2
 endif
 
 # Verbose settings (warning,note,info)
@@ -1360,13 +1373,6 @@ override UNITTARGETDIRPREFIX=$(TARGETDIRPREFIX)
 endif
 endif
 
-# Temporary hack to add HASUNIX define for linux 1.0.6 compiler
-ifeq ($(OS_TARGET),linux)
-ifeq ($(FPC_VERSION),1.0.6)
-override FPCOPTDEF+=HASUNIX
-endif
-endif
-
 ifdef CREATESHARED
 override FPCOPT+=-Cg
 
@@ -1509,7 +1515,7 @@ fpc_units: $(COMPILER_UNITTARGETDIR) $(UNITPPUFILES)
 ifndef CROSSINSTALL
 ifneq ($(TARGET_PROGRAMS),)
 override EXEFILES=$(addsuffix $(EXEEXT),$(TARGET_PROGRAMS))
-override EXEOFILES:=$(addsuffix $(OEXT),$(TARGET_PROGRAMS)) $(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS)))
+override EXEOFILES:=$(addsuffix $(OEXT),$(TARGET_PROGRAMS)) $(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS))) $(addprefix $(IMPORTLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS)))
 
 override ALLTARGET+=fpc_exes
 override INSTALLEXEFILES+=$(EXEFILES)
@@ -1549,7 +1555,7 @@ ifneq ($(TARGET_EXAMPLES),)
 HASEXAMPLES=1
 override EXAMPLESOURCEFILES:=$(wildcard $(addsuffix .pp,$(TARGET_EXAMPLES)) $(addsuffix .pas,$(TARGET_EXAMPLES)) $(addsuffix .lpr,$(TARGET_EXAMPLES)) $(addsuffix .dpr,$(TARGET_EXAMPLES)))
 override EXAMPLEFILES:=$(addsuffix $(EXEEXT),$(TARGET_EXAMPLES))
-override EXAMPLEOFILES:=$(addsuffix $(OEXT),$(TARGET_EXAMPLES)) $(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_EXAMPLES)))
+override EXAMPLEOFILES:=$(addsuffix $(OEXT),$(TARGET_EXAMPLES)) $(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_EXAMPLES))) $(addprefix $(IMPORTLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_EXAMPLES)))
 
 override CLEANEXEFILES+=$(EXAMPLEFILES) $(EXAMPLEOFILES)
 ifeq ($(OS_TARGET),os2)
@@ -1694,7 +1700,7 @@ override INSTALLPPUFILES:=$(filter-out $(INSTALL_BUILDUNIT)$(PPUEXT),$(INSTALLPP
 endif
 
 ifdef INSTALLPPUFILES
-override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
+override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
 ifneq ($(UNITTARGETDIRPREFIX),)
 override INSTALLPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPUFILES)))
 override INSTALLPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPULINKFILES))))
@@ -1900,7 +1906,7 @@ override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
 endif
 
 ifdef CLEANPPUFILES
-override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
+override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
 ifdef DEBUGSYMEXT
 override CLEANPPULINKFILES+=$(subst $(PPUEXT),$(DEBUGSYMEXT),$(CLEANPPUFILES))
 endif
@@ -2118,7 +2124,7 @@ endif
 
 # LCL Platform
 ifndef LCL_PLATFORM
-ifeq ($(OS_TARGET),win32)
+ifneq ($(findstring $(OS_TARGET),win32 win64),)
 LCL_PLATFORM=win32
 else
 LCL_PLATFORM=gtk

+ 7 - 4
utils/fpcm/fpcmmain.pp

@@ -70,7 +70,7 @@ interface
         o_linux,o_go32v2,o_win32,o_os2,o_freebsd,o_beos,o_netbsd,
         o_amiga,o_atari, o_solaris, o_qnx, o_netware, o_openbsd,o_wdosx,
         o_palmos,o_macos,o_darwin,o_emx,o_watcom,o_morphos,o_netwlibc,
-        o_win64,o_wince
+        o_win64,o_wince,o_gba
       );
 
       TTargetSet=array[tcpu,tos] of boolean;
@@ -88,14 +88,14 @@ interface
         'linux','go32v2','win32','os2','freebsd','beos','netbsd',
         'amiga','atari','solaris', 'qnx', 'netware','openbsd','wdosx',
         'palmos','macos','darwin','emx','watcom','morphos','netwlibc',
-        'win64','wince'
+        'win64','wince','gba'
       );
 
       OSSuffix : array[TOS] of string=(
         '_linux','_go32v2','_win32','_os2','_freebsd','_beos','_netbsd',
         '_amiga','_atari','_solaris', '_qnx', '_netware','_openbsd','_wdosx',
         '_palmos','_macos','_darwin','_emx','_watcom','_morphos','_netwlibc',
-        '_win64','_wince'
+        '_win64','_wince','_gba'
       );
 
       { This table is kept OS,Cpu because it is easier to maintain (PFV) }
@@ -123,7 +123,8 @@ interface
         { morphos } ( false, false, true,  false ,false, false, false),
         { netwlibc }( true,  false, false, false, false, false, false),
         { win64   } ( false, false, false, false, true,  false, false),
-        { wince    }( true,  false, false, false, false, true,  false)
+        { wince    }( true,  false, false, false, false, true,  false),
+        { gba    }  ( false, false, false, false, false, true,  false)
       );
 
     type
@@ -716,12 +717,14 @@ implementation
         { Add some default variables like FPCDIR, UNITSDIR }
         AddFPCDefaultVariables;
         { Load LCL code ? }
+{$ifdef SupportLCL}
         s:=GetVariable('require_packages',true);
         if (pos('lcl',s)>0) or (PackageName='lcl') then
          begin
            FUsesLCL:=true;
            AddLCLDefaultVariables;
          end;
+{$endif SupportLCL}
         { Show globals }
         Verbose(FPCMakeDebug,s_globals);
         Variables.Foreach(@PrintDic);

+ 1 - 1
utils/fpcm/fpcmwr.pp

@@ -612,7 +612,7 @@ implementation
         AddTool('PPUMOVE','ppumove','');
         AddTool('FPCMAKE','fpcmake','');
         AddTool('ZIPPROG','zip','');
-        AddTool('TARPROG','tar','');
+        AddTool('TARPROG','gtar','tar');
         AddIniSection('defaulttools');
       end;
 

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