- Updated to version 2.2.2rc1
- Enabled debuginfo for ppc64 again - Do not strip the debugdata on x86_64 anymore - Packages_base, packages_fcl and packages_extra are merged into packages - Don't install packages_fv separately anymore - Fix for incorrect path in official fpc 2.2.2rc1-sourcefile - Updated licence-tag from "GPL and modified LGPL" to fedora-tag "GPLv2+ and LGPLv2+ with exceptions" - Removed UsePrebuildcompiler define for ppc64
This commit is contained in:
parent
f478c9b4ea
commit
5f91b5a391
@ -1,5 +1 @@
|
||||
fpcbuild-2.2.0.tar.gz
|
||||
fpc-2.2.0-samplecfg_32and64bit.patch
|
||||
fpc-2.2.0.compiler.bin.tar.gz
|
||||
fpc-2.2.0-build-id.patch
|
||||
fpc-2.2.0-fpcdocs.patch
|
||||
fpcbuild-2.2.2rc1.tar.gz
|
||||
|
@ -1,67 +0,0 @@
|
||||
--- fpcsrc/compiler/dbgdwarf.pas.org 2008-04-17 17:32:10.000000000 +0200
|
||||
+++ fpcsrc/compiler/dbgdwarf.pas 2008-04-17 17:32:23.000000000 +0200
|
||||
@@ -37,7 +37,7 @@
|
||||
interface
|
||||
|
||||
uses
|
||||
- cclasses,
|
||||
+ cclasses,globtype,
|
||||
aasmbase,aasmtai,aasmdata,
|
||||
symbase,symtype,symdef,symsym,
|
||||
finput,
|
||||
@@ -221,6 +221,7 @@
|
||||
function def_dwarf_class_struct_lab(def:tobjectdef) : tasmsymbol;
|
||||
function get_file_index(afile: tinputfile): Integer;
|
||||
procedure write_symtable_syms(st:TSymtable);
|
||||
+ function clean_dwarf_path(const s:tcmdstr):tcmdstr;
|
||||
protected
|
||||
// set if we should use 64bit headers (dwarf3 and up)
|
||||
_use_64bit_headers: Boolean;
|
||||
@@ -331,8 +332,8 @@
|
||||
implementation
|
||||
|
||||
uses
|
||||
- cutils,cfileutils,
|
||||
- version,globtype,globals,verbose,systems,
|
||||
+ sysutils,cutils,cfileutils,
|
||||
+ version,globals,verbose,systems,
|
||||
cpubase,cgbase,paramgr,
|
||||
fmodule,
|
||||
defutil,symconst,symtable
|
||||
@@ -622,6 +623,14 @@
|
||||
TDebugInfoDwarf
|
||||
****************************************************************************}
|
||||
|
||||
+ function TDebugInfoDwarf.clean_dwarf_path(const s:tcmdstr):tcmdstr;
|
||||
+ begin
|
||||
+ { Make a clean path for gdb. Remove trailing / and ./ prefixes and
|
||||
+ use always a / }
|
||||
+ result:=BsToSlash(ExcludeTrailingPathDelimiter(ExtractRelativePath('.',s)));
|
||||
+ end;
|
||||
+
|
||||
+
|
||||
procedure TDebugInfoDwarf.set_use_64bit_headers(state: boolean);
|
||||
begin
|
||||
_use_64bit_headers:=state;
|
||||
@@ -2233,7 +2242,8 @@
|
||||
ditem := TDirIndexItem(dirlist[n]);
|
||||
if ditem.Name = '.' then
|
||||
Continue;
|
||||
- linelist.concat(tai_string.create(ditem.Name+#0));
|
||||
+ { Write without trailing path delimiter and also don't prefix with ./ for current dir }
|
||||
+ linelist.concat(tai_string.create(clean_dwarf_path(ditem.Name)+#0));
|
||||
end;
|
||||
linelist.concat(tai_const.create_8bit(0));
|
||||
|
||||
@@ -2356,9 +2366,9 @@
|
||||
|
||||
{ first manadatory compilation unit TAG }
|
||||
append_entry(DW_TAG_compile_unit,true,[
|
||||
- DW_AT_name,DW_FORM_string,FixFileName(current_module.sourcefiles.get_file(1).name^)+#0,
|
||||
+ DW_AT_name,DW_FORM_string,clean_dwarf_path(FixFileName(current_module.sourcefiles.get_file(1).path^+current_module.sourcefiles.get_file(1).name^))+#0,
|
||||
DW_AT_producer,DW_FORM_string,'Free Pascal '+full_version_string+' '+date_string+#0,
|
||||
- DW_AT_comp_dir,DW_FORM_string,BsToSlash(FixPath(current_module.sourcefiles.get_file(1).path^,false))+#0,
|
||||
+ DW_AT_comp_dir,DW_FORM_string,clean_dwarf_path(FixPath(GetCurrentDir,false))+#0,
|
||||
DW_AT_language,DW_FORM_data1,DW_LANG_Pascal83,
|
||||
DW_AT_identifier_case,DW_FORM_data1,DW_ID_case_insensitive]);
|
||||
|
16
fpc-2.2.2-build-id.patch
Normal file
16
fpc-2.2.2-build-id.patch
Normal file
@ -0,0 +1,16 @@
|
||||
Index: fpcsrc/compiler/utils/samplecfg
|
||||
===================================================================
|
||||
--- fpcsrc/compiler/utils/samplecfg (revision 8809)
|
||||
+++ fpcsrc/compiler/utils/samplecfg (working copy)
|
||||
@@ -290,6 +290,11 @@
|
||||
# to perform
|
||||
|
||||
# -----------------------
|
||||
+# Use BuildId by default
|
||||
+# -----------------------
|
||||
+-k--build-id
|
||||
+
|
||||
+# -----------------------
|
||||
# Set Filenames and Paths
|
||||
# -----------------------
|
||||
|
26
fpc-2.2.2-fpcdocs.patch
Normal file
26
fpc-2.2.2-fpcdocs.patch
Normal file
@ -0,0 +1,26 @@
|
||||
Index: fpcdocs/Makefile.fpc
|
||||
===================================================================
|
||||
--- fpcdocs/Makefile.fpc
|
||||
+++ fpcdocs/Makefile.fpc
|
||||
@@ -258,7 +258,7 @@
|
||||
comphelp.inc:
|
||||
echo "% Automatically generated. Do not edit" > comphelp.inc
|
||||
echo "\begin{verbatim}" >> comphelp.inc
|
||||
- fpc -h >>comphelp.inc
|
||||
+ $(FPC) -h >>comphelp.inc
|
||||
echo "\end{verbatim}" >> comphelp.inc
|
||||
|
||||
# Local copy of the required styles
|
||||
Index: fpcdocs/Makefile
|
||||
===================================================================
|
||||
--- fpcdocs/Makefile
|
||||
+++ fpcdocs/Makefile
|
||||
@@ -1867,7 +1882,7 @@
|
||||
comphelp.inc:
|
||||
echo "% Automatically generated. Do not edit" > comphelp.inc
|
||||
echo "\begin{verbatim}" >> comphelp.inc
|
||||
- fpc -h >>comphelp.inc
|
||||
+ $(FPC) -h >>comphelp.inc
|
||||
echo "\end{verbatim}" >> comphelp.inc
|
||||
syntax.sty: styles/syntax.sty
|
||||
cp $(wildcard styles/*.sty) .
|
68
fpc-2.2.2-samplecfg_32and64bit.patch
Normal file
68
fpc-2.2.2-samplecfg_32and64bit.patch
Normal file
@ -0,0 +1,68 @@
|
||||
Index: fpcsrc/compiler/utils/samplecfg
|
||||
===================================================================
|
||||
--- fpcsrc/compiler/utils/samplecfg (revision 11245)
|
||||
+++ fpcsrc/compiler/utils/samplecfg (working copy)
|
||||
@@ -35,7 +35,7 @@
|
||||
if [ $# = 0 ]; then
|
||||
echo 'Usage :'
|
||||
echo 'samplecfg fpcdir confdir'
|
||||
- echo 'fpcdir = Path where FPC is installed'
|
||||
+ echo 'fpcdir = Prefix where FPC is installed (/usr, /usr/local)'
|
||||
echo 'confdir = Path to /etc'
|
||||
exit 1
|
||||
fi
|
||||
@@ -155,7 +155,8 @@
|
||||
|
||||
|
||||
# set right path to FPC with $fpcversion
|
||||
-FPCPATH=`dirname "$1"`/\$fpcversion
|
||||
+FPCPATH32=`dirname "$1"`/lib/fpc/\$fpcversion
|
||||
+FPCPATH64=`dirname "$1"`/lib64/fpc/\$fpcversion
|
||||
|
||||
# Write the file
|
||||
echo Writing sample configuration file to $thefile
|
||||
@@ -291,26 +297,36 @@
|
||||
|
||||
# path to the messagefile, not necessary anymore but can be used to override
|
||||
# the default language
|
||||
-#-Fr$FPCPATH/msg/errore.msg
|
||||
-#-Fr$FPCPATH/msg/errorn.msg
|
||||
+#-Fr$FPCPATH32/msg/errore.msg
|
||||
+#-Fr$FPCPATH32/msg/errorn.msg
|
||||
+#-Fr$FPCPATH64/msg/errore.msg
|
||||
+#-Fr$FPCPATH64/msg/errorn.msg
|
||||
|
||||
# searchpath for includefiles
|
||||
#-Fi/pp/inc;/pp/rtl/inc
|
||||
|
||||
#IFDEF FPCAPACHE_1_3
|
||||
--Fu$FPCPATH/units/\$fpctarget/httpd-1.3/
|
||||
+-Fu$FPCPATH32/units/\$fpctarget/httpd-1.3/
|
||||
+-Fu$FPCPATH64/units/\$fpctarget/httpd-1.3/
|
||||
#ELSE
|
||||
#IFDEF FPCAPACHE_2_0
|
||||
--Fu$FPCPATH/units/\$fpctarget/httpd-2.0
|
||||
+-Fu$FPCPATH32/units/\$fpctarget/httpd-2.0
|
||||
+-Fu$FPCPATH64/units/\$fpctarget/httpd-2.0
|
||||
#ELSE
|
||||
--Fu$FPCPATH/units/\$fpctarget/httpd-2.2
|
||||
+-Fu$FPCPATH32/units/\$fpctarget/httpd-2.2
|
||||
+-Fu$FPCPATH64/units/\$fpctarget/httpd-2.2
|
||||
#ENDIF
|
||||
#ENDIF
|
||||
|
||||
# searchpath for units and other system dependent things
|
||||
--Fu$FPCPATH/units/\$fpctarget
|
||||
--Fu$FPCPATH/units/\$fpctarget/*
|
||||
--Fu$FPCPATH/units/\$fpctarget/rtl
|
||||
+# 32-bits
|
||||
+-Fu$FPCPATH32/units/\$fpctarget
|
||||
+-Fu$FPCPATH32/units/\$fpctarget/*
|
||||
+-Fu$FPCPATH32/units/\$fpctarget/rtl
|
||||
+# 64-bits
|
||||
+-Fu$FPCPATH64/units/\$fpctarget
|
||||
+-Fu$FPCPATH64/units/\$fpctarget/*
|
||||
+-Fu$FPCPATH64/units/\$fpctarget/rtl
|
||||
#-Fu~/fpc/packages/base/*/units/$fpctarget;~/fpc/fcl/units/$fpctarget;~/fpc/rtl/units/$fpctarget
|
||||
|
||||
# searchpath for libraries
|
52
fpc.spec
52
fpc.spec
@ -1,23 +1,21 @@
|
||||
%ifarch ppc64
|
||||
%define useprebuiltcompiler 1
|
||||
%endif
|
||||
|
||||
Name: fpc
|
||||
Version: 2.2.0
|
||||
Release: 12%{?dist}
|
||||
Version: 2.2.2
|
||||
Release: 0.1.rc1%{?dist}
|
||||
Summary: Free Pascal Compiler
|
||||
|
||||
Group: Development/Languages
|
||||
License: GPL and modified LGPL
|
||||
License: GPLv2+ and LGPLv2+ with exceptions
|
||||
URL: http://www.freepascal.org/
|
||||
Source0: ftp://ftp.freepascal.org/pub/fpc/dist/source-%{version}/%{name}build-%{version}.tar.gz
|
||||
# Source0: ftp://ftp.freepascal.org/pub/fpc/dist/source-%{version}/%{name}build-%{version}.tar.gz
|
||||
# The rc-download has a different path:
|
||||
Source0: ftp://ftp.freepascal.org/pub/fpc/beta/%{version}rc1/source/%{name}build-%{version}rc1.tar.gz
|
||||
# This is only needed when useprebuiltcompiler is defined.
|
||||
# But it's not in an 'if defined' block, since the file has to be included in the srpm
|
||||
Source1: http://www.cnoc.nl/fpc/%{name}-%{version}.compiler.bin.tar.gz
|
||||
# Thus you should enable this line when useprebuildcompiler is defined for any target
|
||||
# Source1: http://www.cnoc.nl/fpc/%{name}-%{version}.compiler.bin.tar.gz
|
||||
Patch0: %{name}-%{version}-samplecfg_32and64bit.patch
|
||||
Patch1: %{name}-%{version}-build-id.patch
|
||||
Patch2: %{name}-%{version}-fpcdocs.patch
|
||||
Patch3: %{name}-%{version}-DWARF_Patch_r8847.diff
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
||||
|
||||
Requires: gpm, glibc, ncurses, binutils
|
||||
@ -54,21 +52,18 @@ The fpc-src package contains the sources of Freepascal, for documentation or
|
||||
automatical-code generation purposes.
|
||||
|
||||
%define smart _smart
|
||||
%define fpcopt '-k--build-id -gl'
|
||||
|
||||
%ifarch ppc
|
||||
%define ppcname ppcppc
|
||||
%define fpcopt '-k--build-id -gl'
|
||||
%else
|
||||
%ifarch x86_64
|
||||
%define ppcname ppcx64
|
||||
%define fpcopt '-k--build-id -gl'
|
||||
%else
|
||||
%ifarch ppc64
|
||||
%define ppcname ppcppc64
|
||||
%define fpcopt '-k--build-id'
|
||||
%else
|
||||
%define ppcname ppc386
|
||||
%define fpcopt '-k--build-id -gl'
|
||||
%endif
|
||||
%endif
|
||||
%endif
|
||||
@ -77,12 +72,12 @@ automatical-code generation purposes.
|
||||
%if %{defined useprebuiltcompiler}
|
||||
%setup -a1 -n fpcbuild-%{version} -q
|
||||
%else
|
||||
%setup -n fpcbuild-%{version} -q
|
||||
# %setup -n fpcbuild-%{version} -q
|
||||
%setup -n release_2_2_2_rc1 -q
|
||||
%endif
|
||||
%patch0
|
||||
%patch1
|
||||
%patch2
|
||||
%patch3
|
||||
|
||||
%build
|
||||
# The source-files:
|
||||
@ -103,22 +98,10 @@ NEWFPDOC=`pwd`/utils/fpdoc/fpdoc
|
||||
DATA2INC=`pwd`/utils/data2inc
|
||||
make compiler_cycle FPC=${STARTPP} OPT=%{fpcopt}
|
||||
make rtl_clean rtl%{smart} FPC=${NEWPP} OPT=%{fpcopt}
|
||||
make packages_base%{smart} FPC=${NEWPP} OPT=%{fpcopt}
|
||||
make packages_fcl%{smart} FPC=${NEWPP} OPT=%{fpcopt}
|
||||
make fv%{smart} FPC=${NEWPP} OPT=%{fpcopt}
|
||||
make packages_extra%{smart} FPC=${NEWPP} OPT=%{fpcopt}
|
||||
make packages%{smart} FPC=${NEWPP} OPT=%{fpcopt}
|
||||
make ide_all FPC=${NEWPP} OPT=%{fpcopt}
|
||||
make utils_all FPC=${NEWPP} DATA2INC=${DATA2INC} OPT=%{fpcopt}
|
||||
|
||||
%ifarch x86_64
|
||||
# Debugedit crashes on this file, if it has debug-info.
|
||||
# As a temporary solution, strip the debug-info.
|
||||
%__strip utils/h2pas/h2pas
|
||||
%__strip utils/grab_vcsa
|
||||
%__strip compiler/utils/ppudump
|
||||
%__strip packages/fcl-net/mkxmlrpc
|
||||
%endif
|
||||
|
||||
cd ..
|
||||
make -C fpcdocs pdf FPC=${NEWPP} FPDOC=${NEWFPDOC}
|
||||
|
||||
@ -138,7 +121,6 @@ INSTALLOPTS="FPC=${NEWPP} FPCMAKE=${FPCMAKE} \
|
||||
make compiler_distinstall ${INSTALLOPTS}
|
||||
make rtl_distinstall ${INSTALLOPTS}
|
||||
make packages_distinstall ${INSTALLOPTS}
|
||||
make fv_distinstall ${INSTALLOPTS}
|
||||
make ide_distinstall ${INSTALLOPTS}
|
||||
make utils_distinstall ${INSTALLOPTS}
|
||||
cd ../install
|
||||
@ -194,6 +176,16 @@ rm -rf %{buildroot}
|
||||
%{_datadir}/fpcsrc
|
||||
|
||||
%changelog
|
||||
* Sun Jun 22 2008 Joost van der Sluis <joost@cnoc.nl> 2.2.2rc1-1
|
||||
- Updated to version 2.2.2rc1
|
||||
- Enabled debuginfo for ppc64 again
|
||||
- Do not strip the debugdata on x86_64 anymore
|
||||
- Packages_base, packages_fcl and packages_extra are merged into packages
|
||||
- Don't install packages_fv separately anymore
|
||||
- Fix for incorrect path in official fpc 2.2.2rc1-sourcefile
|
||||
- Updated licence-tag from "GPL and modified LGPL" to fedora-tag "GPLv2+ and LGPLv2+ with exceptions"
|
||||
- Removed UsePrebuildcompiler define for ppc64
|
||||
|
||||
* Wed Apr 16 2008 Joost van der Sluis <joost@cnoc.nl> 2.2.0-12
|
||||
- Fix for DWARF-debug generation - fixes some more build problems on x86_64 and F9, bugzilla 337051
|
||||
|
||||
|
6
sources
6
sources
@ -1,5 +1 @@
|
||||
0869cfd07d012b702ff08c0a4196624b fpcbuild-2.2.0.tar.gz
|
||||
01fb41d3a6b0536939f63d684d916e5f fpc-2.2.0-samplecfg_32and64bit.patch
|
||||
d78b19b59457bb98dacb6e3267fe3714 fpc-2.2.0.compiler.bin.tar.gz
|
||||
02d1e509ba590b7de0817f69658f047f fpc-2.2.0-build-id.patch
|
||||
3a5fbdcee3f36dbfaf57915456fa70e5 fpc-2.2.0-fpcdocs.patch
|
||||
5c450b43281d9bee497622c114d2ca14 fpcbuild-2.2.2rc1.tar.gz
|
||||
|
Loading…
Reference in New Issue
Block a user