Upgrade to upstream release 2.6.4.

This commit is contained in:
Joost van der Sluis 2015-03-09 12:24:27 +01:00
parent 745494b0f0
commit a39f847120
7 changed files with 90 additions and 76 deletions

1
.gitignore vendored
View File

@ -5,3 +5,4 @@ fpcbuild-2.4.0.tar.gz
/fpcbuild-2.6.2rc1.tar.gz
/fpcbuild-2.6.2.tar.gz
/fpc-2.6.2-bin-armv7hf.tar.gz
/fpcbuild-2.6.4.tar.gz

View File

@ -1,45 +0,0 @@
Description: <short summary of the patch>
fixup some conditionals in arm assembler to avoid using instrutions that
fpc 2.6.0 doesn't support when building the rtl with 2.6.0 (first stage)
Author: Peter Michael Green <plugwash@debian.org>
Forwarded: not-needed
Last-Update: 2013-05-30
--- fpc-2.6.2.orig/fpcsrc/rtl/arm/arm.inc
+++ fpc-2.6.2/fpcsrc/rtl/arm/arm.inc
@@ -895,7 +895,7 @@ end;
function SwapEndian(const AValue: LongInt): LongInt;assembler;nostackframe;
asm
// We're starting with r0 = 4321
-{$if defined(cpuarmv3) or defined(cpuarmv4) or defined(cpuarmv5)}
+{$if defined(cpuarmv3) or defined(cpuarmv4) or defined(cpuarmv5) or defined(ver2_6_0)}
mov r2, r0, lsr #24 // r2 = 0004
and r1, r0, #16711680 // r1 = 0300
orr r2, r2, r0, lsl #24 // r2 = 1004
@@ -910,7 +910,7 @@ end;
function SwapEndian(const AValue: DWord): DWord;assembler;nostackframe;
asm
// We're starting with r0 = 4321
-{$if defined(cpuarmv3) or defined(cpuarmv4) or defined(cpuarmv5)}
+{$if defined(cpuarmv3) or defined(cpuarmv4) or defined(cpuarmv5) or defined(ver2_6_0)}
mov r2, r0, lsr #24 // r2 = 0004
and r1, r0, #16711680 // r1 = 0300
orr r2, r2, r0, lsl #24 // r2 = 1004
@@ -925,7 +925,7 @@ end;
function SwapEndian(const AValue: Int64): Int64; assembler; nostackframe;
asm
// We're starting with r0 = 4321 r1 = 8765
-{$if defined(cpuarmv3) or defined(cpuarmv4) or defined(cpuarmv5)}
+{$if defined(cpuarmv3) or defined(cpuarmv4) or defined(cpuarmv5) or defined(ver2_6_0)}
mov ip, r1
mov r2, r0, lsr #24 // r2 = 0004
@@ -952,7 +952,7 @@ end;
function SwapEndian(const AValue: QWord): QWord; assembler; nostackframe;
asm
// We're starting with r0 = 4321 r1 = 8765
-{$if defined(cpuarmv3) or defined(cpuarmv4) or defined(cpuarmv5)}
+{$if defined(cpuarmv3) or defined(cpuarmv4) or defined(cpuarmv5) or defined(ver2_6_0)}
mov ip, r1
mov r2, r0, lsr #24 // r2 = 0004

View File

@ -87,7 +87,7 @@ Index: fpc-2.6.0/fpcsrc/compiler/systems.inc
===================================================================
--- fpc-2.6.0.orig/fpcsrc/compiler/systems.inc 2012-03-28 20:18:02.000000000 +0000
+++ fpc-2.6.0/fpcsrc/compiler/systems.inc 2012-03-28 20:18:04.000000000 +0000
@@ -210,7 +210,7 @@
@@ -212,7 +212,7 @@
tabi = (abi_default
,abi_powerpc_sysv,abi_powerpc_aix
@ -100,7 +100,7 @@ Index: fpc-2.6.0/fpcsrc/compiler/systems.pas
===================================================================
--- fpc-2.6.0.orig/fpcsrc/compiler/systems.pas 2012-03-28 20:18:02.000000000 +0000
+++ fpc-2.6.0/fpcsrc/compiler/systems.pas 2012-03-28 20:18:04.000000000 +0000
@@ -305,7 +305,7 @@
@@ -316,7 +316,7 @@
'mips','arm', 'powerpc64', 'avr', 'mipsel');
abi2str : array[tabi] of string[10] =
@ -199,7 +199,7 @@ Index: fpc-2.6.0/fpcsrc/compiler/arm/cgcpu.pas
===================================================================
--- fpc-2.6.0.orig/fpcsrc/compiler/arm/cgcpu.pas 2012-03-28 20:18:02.000000000 +0000
+++ fpc-2.6.0/fpcsrc/compiler/arm/cgcpu.pas 2012-03-28 20:18:04.000000000 +0000
@@ -1430,7 +1430,8 @@
@@ -1451,7 +1451,8 @@
end;
end;
fpu_vfpv2,
@ -209,7 +209,7 @@ Index: fpc-2.6.0/fpcsrc/compiler/arm/cgcpu.pas
begin;
mmregs:=rg[R_MMREGISTER].used_in_proc-paramanager.get_volatile_registers_mm(pocall_stdcall);
end;
@@ -1501,7 +1502,7 @@
@@ -1522,7 +1523,7 @@
begin
reference_reset(ref,4);
if (tg.direction*tarmprocinfo(current_procinfo).floatregstart>=1023) or
@ -218,7 +218,7 @@ Index: fpc-2.6.0/fpcsrc/compiler/arm/cgcpu.pas
begin
if not is_shifter_const(tarmprocinfo(current_procinfo).floatregstart,shift) then
begin
@@ -1529,7 +1530,8 @@
@@ -1550,7 +1551,8 @@
lastfloatreg-firstfloatreg+1,ref));
end;
fpu_vfpv2,
@ -228,7 +228,7 @@ Index: fpc-2.6.0/fpcsrc/compiler/arm/cgcpu.pas
begin
ref.index:=ref.base;
ref.base:=NR_NO;
@@ -1583,7 +1585,8 @@
@@ -1604,7 +1606,8 @@
end;
end;
fpu_vfpv2,
@ -238,7 +238,7 @@ Index: fpc-2.6.0/fpcsrc/compiler/arm/cgcpu.pas
begin;
{ restore vfp registers? }
mmregs:=rg[R_MMREGISTER].used_in_proc-paramanager.get_volatile_registers_mm(pocall_stdcall);
@@ -1595,7 +1598,7 @@
@@ -1616,7 +1619,7 @@
begin
reference_reset(ref,4);
if (tg.direction*tarmprocinfo(current_procinfo).floatregstart>=1023) or
@ -247,7 +247,7 @@ Index: fpc-2.6.0/fpcsrc/compiler/arm/cgcpu.pas
begin
if not is_shifter_const(tarmprocinfo(current_procinfo).floatregstart,shift) then
begin
@@ -1622,7 +1625,8 @@
@@ -1643,7 +1646,8 @@
lastfloatreg-firstfloatreg+1,ref));
end;
fpu_vfpv2,
@ -867,7 +867,7 @@ Index: fpc-2.6.0/fpcsrc/compiler/arm/cpupara.pas
getparaloc:=LOC_REGISTER
else
getparaloc:=LOC_FPUREGISTER;
@@ -213,17 +217,18 @@
@@ -278,17 +282,18 @@
end;
@ -888,7 +888,7 @@ Index: fpc-2.6.0/fpcsrc/compiler/arm/cpupara.pas
var
nextintreg,nextfloatreg,nextmmreg : tsuperregister;
@@ -302,7 +307,7 @@
@@ -367,7 +372,7 @@
paralen := paradef.size
else
paralen := tcgsize2size[def_cgsize(paradef)];
@ -897,7 +897,7 @@ Index: fpc-2.6.0/fpcsrc/compiler/arm/cpupara.pas
if (paradef.typ in [objectdef,arraydef,recorddef]) and
not is_special_array(paradef) and
(hp.varspez in [vs_value,vs_const]) then
@@ -349,7 +354,7 @@
@@ -414,7 +419,7 @@
LOC_REGISTER:
begin
{ align registers for eabi }
@ -906,7 +906,7 @@ Index: fpc-2.6.0/fpcsrc/compiler/arm/cpupara.pas
firstparaloc and
(paradef.alignment=8) then
begin
@@ -405,6 +410,52 @@
@@ -470,6 +475,52 @@
end;
end;
end;
@ -959,7 +959,7 @@ Index: fpc-2.6.0/fpcsrc/compiler/arm/cpupara.pas
LOC_REFERENCE:
begin
if push_addr_param(hp.varspez,paradef,p.proccalloption) then
@@ -415,7 +466,7 @@
@@ -480,7 +531,7 @@
else
begin
{ align stack for eabi }
@ -968,7 +968,7 @@ Index: fpc-2.6.0/fpcsrc/compiler/arm/cpupara.pas
firstparaloc and
(paradef.alignment=8) then
stack_offset:=align(stack_offset,8);
@@ -499,9 +550,28 @@
@@ -564,9 +615,28 @@
{ Return in FPU register? }
if def.typ=floatdef then
begin
@ -999,7 +999,7 @@ Index: fpc-2.6.0/fpcsrc/compiler/arm/cpupara.pas
begin
case retcgsize of
OS_64,
@@ -563,10 +633,11 @@
@@ -628,10 +698,11 @@
var
cur_stack_offset: aword;
curintreg, curfloatreg, curmmreg: tsuperregister;
@ -1013,7 +1013,7 @@ Index: fpc-2.6.0/fpcsrc/compiler/arm/cpupara.pas
create_funcretloc_info(p,side);
end;
@@ -576,13 +647,14 @@
@@ -641,13 +712,14 @@
var
cur_stack_offset: aword;
curintreg, curfloatreg, curmmreg: tsuperregister;
@ -1138,7 +1138,7 @@ Index: fpc-2.6.0/fpcsrc/compiler/options.pas
===================================================================
--- fpc-2.6.0.orig/fpcsrc/compiler/options.pas 2012-03-28 20:18:02.000000000 +0000
+++ fpc-2.6.0/fpcsrc/compiler/options.pas 2012-03-28 20:18:04.000000000 +0000
@@ -2660,6 +2660,11 @@
@@ -2839,6 +2839,11 @@
undef_system_macro('FPC_ABI_'+abi2str[abi]);
def_system_macro('FPC_ABI_'+abi2str[target_info.abi]);
@ -1150,7 +1150,7 @@ Index: fpc-2.6.0/fpcsrc/compiler/options.pas
{ Write logo }
if option.ParaLogo then
option.writelogo;
@@ -2823,6 +2828,24 @@
@@ -3005,6 +3010,24 @@
end;
{$ifdef arm}
@ -1175,7 +1175,7 @@ Index: fpc-2.6.0/fpcsrc/compiler/options.pas
{ set default cpu type to ARMv6 for Darwin unless specified otherwise }
if (target_info.system=system_arm_darwin) then
begin
@@ -2831,6 +2854,16 @@
@@ -3013,6 +3036,16 @@
if not option.OptCPUSetExplicitly then
init_settings.optimizecputype:=cpu_armv6;
end;

View File

@ -1,6 +1,6 @@
Name: fpc
Version: 2.6.2
Release: 6%{?dist}
Version: 2.6.4
Release: 1%{?dist}
Summary: Free Pascal Compiler
Group: Development/Languages
@ -27,7 +27,8 @@ Patch0: fpc-2.6.2-r22920.patch
Patch1: armhf.diff
Patch2: regenerate_messages.diff
Patch3: armhf-linker-path.diff
Patch4: armhf-build-with-2.6.0.diff
# Patch for the fpmake-packages (fcl-web and fastcgi) to be installed in lib64
Patch4: fpmake-lib64.diff
Requires: gpm, ncurses, binutils
%if ! %{defined useprebuiltcompiler}
@ -35,7 +36,7 @@ BuildRequires: fpc
%endif
BuildRequires: tetex, tetex-latex, tetex-fonts
ExcludeArch: s390 s390x
ExclusiveArch: %{arm} %{ix86} x86_64 ppc ppc64
%description
@ -97,7 +98,6 @@ automatical-code generation purposes.
%patch3 -p1
%patch4 -p1
%build
# The source-files:
mkdir -p fpc_src
@ -204,6 +204,12 @@ rm -rf %{buildroot}%{_libdir}/%{name}/lexyacc
%changelog
* Sat Mar 7 2015 Joost van der Sluis <joost@cnoc.nl> - 2.6.4-1
- Upgrade to upstream release 2.6.4.
* Tue Jan 20 2015 Dan Horák <dan[at]danny.cz> - 2.6.2-7
- switch to ExclusiveArch
* Sat Aug 16 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.6.2-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild

52
fpmake-lib64.diff Normal file
View File

@ -0,0 +1,52 @@
--- fpcb/fpcsrc/packages/fcl-web/Makefile 2014-02-25 12:05:54.000000000 +0100
+++ fpcbuild-2.6.4/fpcsrc/packages/fcl-web/Makefile 2015-03-08 21:47:39.846169214 +0100
@@ -2087,8 +2087,8 @@
$(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR)
endif
distinstall: fpmake
ifdef UNIXHier
- $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) -ie
+ $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) -ie
else
- $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) -ie
+ $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --baseinstalldir=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) -ie
endif
--- fpcb/fpcsrc/packages/fcl-web/Makefile.fpc 2014-02-25 12:05:54.000000000 +0100
+++ fpcbuild-2.6.4/fpcsrc/packages/fcl-web/Makefile.fpc 2015-03-08 21:47:31.244967084 +0100
@@ -69,8 +69,7 @@
# distinstall also installs the example-sources
distinstall: fpmake
ifdef UNIXHier
- $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) -ie
+ $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) -ie
else
- $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) -ie
+ $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --baseinstalldir=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) -ie
endif
-
--- fpcb/fpcsrc/packages/fastcgi/Makefile 2014-02-25 12:05:54.000000000 +0100
+++ fpcbuild-2.6.4/fpcsrc/packages/fastcgi/Makefile 2015-03-08 21:47:39.846169214 +0100
@@ -2087,8 +2087,8 @@
$(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR)
endif
distinstall: fpmake
ifdef UNIXHier
- $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) -ie
+ $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) -ie
else
- $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) -ie
+ $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --baseinstalldir=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) -ie
endif
--- fpcb/fpcsrc/packages/fastcgi/Makefile.fpc 2014-02-25 12:05:54.000000000 +0100
+++ fpcbuild-2.6.4/fpcsrc/packages/fastcgi/Makefile.fpc 2015-03-08 21:47:31.244967084 +0100
@@ -68,8 +68,7 @@
# distinstall also installs the example-sources
distinstall: fpmake
ifdef UNIXHier
- $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) -ie
+ $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) -ie
else
- $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) -ie
+ $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --baseinstalldir=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) -ie
endif
-

View File

@ -4,7 +4,7 @@ diff --git a/fpcsrc/compiler/msgidx.inc b/fpcsrc/compiler/msgidx.inc
index 4537489..d30b945 100644
--- a/fpcsrc/compiler/msgidx.inc
+++ b/fpcsrc/compiler/msgidx.inc
@@ -877,6 +877,7 @@ const
@@ -877,6 +877,7 @@
option_debug_external_unsupported=11048;
option_invalid_macosx_deployment_target=11049;
option_invalid_iphoneos_deployment_target=11050;
@ -12,7 +12,7 @@ index 4537489..d30b945 100644
wpo_cant_find_file=12000;
wpo_begin_processing=12001;
wpo_end_processing=12002;
@@ -901,9 +902,9 @@ const
@@ -901,9 +902,9 @@
option_info=11024;
option_help_pages=11025;
@ -38,7 +38,7 @@ index d699678..f015d78 100644
{$endif Delphi}
'01000_T_Compiler: $1'#000+
'01001_D_Compiler OS: $1'#000+
@@ -1034,58 +1034,60 @@ const msgtxt : array[0..000257,1..240] of char=(
@@ -1034,58 +1034,60 @@
'e: $1'#000+
'11050_E_Invalid value for IPHONEOS_DEPLOYMENT_TARGET environment varia'+
'ble: $1'#000+
@ -112,8 +112,8 @@ index d699678..f015d78 100644
+ 'file "$1"'#000+
'11023_Free Pascal Compiler version $FPCFULLVERSION [$FPCDATE] for $FPC'+
'CPU'#010+
- 'Copy','right (c) 1993-2012 by Florian Klaempfl and others'#000+
+ 'Copyright (c) 1993-2012 by Florian Klaempfl and others'#000+
- 'Copy','right (c) 1993-2014 by Florian Klaempfl and others'#000+
+ 'Copyright (c) 1993-2014 by Florian Klaempfl and others'#000+
'11024_Free Pascal Compiler version $FPCVERSION'#010+
#010+
'Compiler Date : $FPCDATE'#010+
@ -129,7 +129,7 @@ index d699678..f015d78 100644
#010+
'Supported FPU instruction sets:'#010+
' $FPUINSTRUCTIONSETS'#010+
@@ -1096,348 +1098,349 @@ const msgtxt : array[0..000257,1..240] of char=(
@@ -1096,348 +1098,349 @@
'Supported Optimizations:'#010+
' $OPTIMIZATIONS'#010+
#010+

View File

@ -1 +1 @@
89c7e60db6280f3d5cc006a4a9ff43a9 fpcbuild-2.6.2.tar.gz
403da132aed194fd841d46c3b33b022a fpcbuild-2.6.4.tar.gz