diff options
author | Harald van Dijk <truedfx@gentoo.org> | 2009-03-14 17:29:50 +0000 |
---|---|---|
committer | Harald van Dijk <truedfx@gentoo.org> | 2009-03-14 17:29:50 +0000 |
commit | 06bcda66829686390d7dc61b42dbdf6b19de1810 (patch) | |
tree | e711f4917b5b08b09e9df4d2720008ca33511988 /dev-lang | |
parent | arm/ia64/s390/sh/sparc stable wrt #259927 (diff) | |
download | historical-06bcda66829686390d7dc61b42dbdf6b19de1810.tar.gz historical-06bcda66829686390d7dc61b42dbdf6b19de1810.tar.bz2 historical-06bcda66829686390d7dc61b42dbdf6b19de1810.zip |
Drop RESTRICT=strip, and pick execstack fix from upstream
Package-Manager: portage-2.2_rc25/cvs/Linux x86_64
Diffstat (limited to 'dev-lang')
-rw-r--r-- | dev-lang/fpc/ChangeLog | 13 | ||||
-rw-r--r-- | dev-lang/fpc/files/fpc-2.2.2-execstack.patch | 338 | ||||
-rw-r--r-- | dev-lang/fpc/fpc-2.0.0-r1.ebuild | 161 | ||||
-rw-r--r-- | dev-lang/fpc/fpc-2.0.2.ebuild | 161 | ||||
-rw-r--r-- | dev-lang/fpc/fpc-2.0.4.ebuild | 148 | ||||
-rw-r--r-- | dev-lang/fpc/fpc-2.2.2-r1.ebuild (renamed from dev-lang/fpc/fpc-2.2.2.ebuild) | 12 | ||||
-rw-r--r-- | dev-lang/lazarus/ChangeLog | 8 | ||||
-rw-r--r-- | dev-lang/lazarus/lazarus-0.9.26-r1.ebuild (renamed from dev-lang/lazarus/lazarus-0.9.26.ebuild) | 7 |
8 files changed, 366 insertions, 482 deletions
diff --git a/dev-lang/fpc/ChangeLog b/dev-lang/fpc/ChangeLog index a9b269b194c6..2fc23d1fe383 100644 --- a/dev-lang/fpc/ChangeLog +++ b/dev-lang/fpc/ChangeLog @@ -1,6 +1,15 @@ # ChangeLog for dev-lang/fpc -# Copyright 1999-2008 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/fpc/ChangeLog,v 1.45 2008/12/16 19:30:03 truedfx Exp $ +# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2 +# $Header: /var/cvsroot/gentoo-x86/dev-lang/fpc/ChangeLog,v 1.46 2009/03/14 17:29:50 truedfx Exp $ + +*fpc-2.2.2-r1 (10 Mar 2009) + + 14 Mar 2009; Harald van Dijk <truedfx@gentoo.org> + +files/fpc-2.2.2-execstack.patch, -fpc-2.0.0-r1.ebuild, -fpc-2.0.2.ebuild, + -fpc-2.0.4.ebuild, -fpc-2.2.2.ebuild, +fpc-2.2.2-r1.ebuild: + Drop RESTRICT=strip, now that binutils is fixed (#183725) + Pick noexecstack bits from upstream (#228867) + Remove older versions 16 Dec 2008; Harald van Dijk <truedfx@gentoo.org> fpc-2.0.4.ebuild, fpc-2.2.0.ebuild, fpc-2.2.0-r1.ebuild, fpc-2.2.2.ebuild: diff --git a/dev-lang/fpc/files/fpc-2.2.2-execstack.patch b/dev-lang/fpc/files/fpc-2.2.2-execstack.patch new file mode 100644 index 000000000000..c2c38c20dc45 --- /dev/null +++ b/dev-lang/fpc/files/fpc-2.2.2-execstack.patch @@ -0,0 +1,338 @@ + + http://bugs.gentoo.org/show_bug.cgi?id=228867 + http://mantis.freepascal.org/view.php?id=11563 + +--- fpcbuild-2.2.2/fpcsrc/compiler/aggas.pas ++++ fpcbuild-2.2.2/fpcsrc/compiler/aggas.pas +@@ -1074,6 +1074,13 @@ + (target_info.system in systems_darwin) then + AsmWriteLn(#9'.subsections_via_symbols'); + ++ { "no executable stack" marker for Linux } ++ if (target_info.system in system_linux) and ++ not(cs_executable_stack in current_settings.moduleswitches) then ++ begin ++ AsmWriteLn('.section .note.GNU-stack,"",%progbits'); ++ end; ++ + AsmLn; + {$ifdef EXTDEBUG} + if assigned(current_module.mainsource) then +--- fpcbuild-2.2.2/fpcsrc/compiler/globtype.pas ++++ fpcbuild-2.2.2/fpcsrc/compiler/globtype.pas +@@ -109,7 +109,9 @@ + { linking } + cs_create_smart,cs_create_dynamic,cs_create_pic, + { browser switches are back } +- cs_browser,cs_local_browser ++ cs_browser,cs_local_browser, ++ { target specific } ++ cs_executable_stack + ); + tmoduleswitches = set of tmoduleswitch; + +--- fpcbuild-2.2.2/fpcsrc/compiler/msg/errore.msg ++++ fpcbuild-2.2.2/fpcsrc/compiler/msg/errore.msg +@@ -2699,6 +2699,7 @@ + 3*1W<x>_Target-specific options (targets) + A*1W<x>_Target-specific options (targets) + P*1W<x>_Target-specific options (targets) ++p*1W<x>_Target-specific options (targets) + 3*2Wb_Create a bundle instead of a library (Darwin) + P*2Wb_Create a bundle instead of a library (Darwin) + p*2Wb_Create a bundle instead of a library (Darwin) +@@ -2718,6 +2719,10 @@ + 3*2WR_Generate relocation code (Windows) + A*2WR_Generate relocation code (Windows) + P*2WT_Specify MPW tool type application (Classic Mac OS) ++3*2WX_Enable executable stack (Linux) ++A*2WX_Enable executable stack (Linux) ++p*2WX_Enable executable stack (Linux) ++P*2WX_Enable executable stack (Linux) + **1X_Executable options: + **2Xc_Pass --shared/-dynamic to the linker (BeOS, Darwin, FreeBSD, Linux) + **2Xd_Do not use standard library search path (needed for cross compile) +--- fpcbuild-2.2.2/fpcsrc/compiler/msgidx.inc ++++ fpcbuild-2.2.2/fpcsrc/compiler/msgidx.inc +@@ -738,7 +738,7 @@ + option_info=11024; + option_help_pages=11025; + +- MsgTxtSize = 45950; ++ MsgTxtSize = 46144; + + MsgIdxMax : array[1..20] of longint=( + 24,87,248,84,63,50,108,22,135,61, +--- fpcbuild-2.2.2/fpcsrc/compiler/msgtxt.inc ++++ fpcbuild-2.2.2/fpcsrc/compiler/msgtxt.inc +@@ -1,7 +1,7 @@ + {$ifdef Delphi} +-const msgtxt : array[0..000191] of string[240]=( ++const msgtxt : array[0..000192] of string[240]=( + {$else Delphi} +-const msgtxt : array[0..000191,1..240] of char=( ++const msgtxt : array[0..000192,1..240] of char=( + {$endif Delphi} + '01000_T_Compiler: $1'#000+ + '01001_D_Compiler OS: $1'#000+ +@@ -1051,47 +1051,52 @@ + '3*1W<x>_Target-specific options (targets)'#010+ + 'A*1W<x>_Target-specific options (targets)'#010+ + 'P*1W<x>_Target-specific options (targets)'#010+ +- '3*2Wb_Create a b','undle instead of a library (Darwin)'#010+ ++ 'p*1W<x>_Target-s','pecific options (targets)'#010+ ++ '3*2Wb_Create a bundle instead of a library (Darwin)'#010+ + 'P*2Wb_Create a bundle instead of a library (Darwin)'#010+ + 'p*2Wb_Create a bundle instead of a library (Darwin)'#010+ + '3*2WB_Create a relocatable image (Windows)'#010+ +- 'A*2WB_Create a relocatable image (Windows, Symbian)'#010+ +- '3*2WC','_Specify console type application (EMX, OS/2, Windows)'#010+ ++ 'A*2WB_Create a ','relocatable image (Windows, Symbian)'#010+ ++ '3*2WC_Specify console type application (EMX, OS/2, Windows)'#010+ + 'A*2WC_Specify console type application (Windows)'#010+ + 'P*2WC_Specify console type application (Classic Mac OS)'#010+ +- '3*2WD_Use DEFFILE to export functions of DLL or EXE (Windows)'#010+ +- 'A*2WD_Use DEFFILE ','to export functions of DLL or EXE (Windows)'#010+ ++ '3*2WD_Use DEFFILE to export functions ','of DLL or EXE (Windows)'#010+ ++ 'A*2WD_Use DEFFILE to export functions of DLL or EXE (Windows)'#010+ + '3*2WF_Specify full-screen type application (EMX, OS/2)'#010+ + '3*2WG_Specify graphic type application (EMX, OS/2, Windows)'#010+ +- 'A*2WG_Specify graphic type application (Windows)'#010+ +- 'P*2WG_Specify graphic type appli','cation (Classic Mac OS)'#010+ ++ 'A*2WG_Specify graphic type application ','(Windows)'#010+ ++ 'P*2WG_Specify graphic type application (Classic Mac OS)'#010+ + '3*2WN_Do not generate relocation code, needed for debugging (Windows)'#010+ + 'A*2WN_Do not generate relocation code, needed for debugging (Windows)'#010+ +- '3*2WR_Generate relocation code (Windows)'#010+ +- 'A*2WR_Generate relocation code (Win','dows)'#010+ ++ '3*2WR_Generate relocation code (Wi','ndows)'#010+ ++ 'A*2WR_Generate relocation code (Windows)'#010+ + 'P*2WT_Specify MPW tool type application (Classic Mac OS)'#010+ ++ '3*2WX_Enable executable stack (Linux)'#010+ ++ 'A*2WX_Enable executable stack (Linux)'#010+ ++ 'p*2WX_Enable executable stack (Linux)'#010+ ++ 'P*2WX_Enable executab','le stack (Linux)'#010+ + '**1X_Executable options:'#010+ + '**2Xc_Pass --shared/-dynamic to the linker (BeOS, Darwin, FreeBSD, Lin'+ + 'ux)'#010+ + '**2Xd_Do not use standard library search path (needed for cross compil'+ + 'e)'#010+ +- '**2Xe','_Use external linker'#010+ +- '**2Xg_Create debuginfo in a separate file and add a debuglink section '+ +- 'to executable'#010+ ++ '**2Xe_Use external linker'#010+ ++ '**2Xg_Create debuginfo in',' a separate file and add a debuglink sectio'+ ++ 'n to executable'#010+ + '**2XD_Try to link units dynamically (defines FPC_LINK_DYNAMIC)'#010+ + '**2Xi_Use internal linker'#010+ + '**2Xm_Generate link map'#010+ +- '**2XM<x>_Set the ','name of the '#039'main'#039' program routine (default'+ +- ' is '#039'main'#039')'#010+ ++ '**2XM<x>_Set the name of the '#039'main'#039' program routine (default i'+ ++ 's',' '#039'main'#039')'#010+ + '**2XP<x>_Prepend the binutils names with the prefix <x>'#010+ + '**2Xr<x>_Set library search path to <x> (needed for cross compile) (Be'+ + 'OS, Linux)'#010+ +- '**2XR<x>_Prepend <x> to all linker search paths ','(BeOS, Darwin, FreeB'+ +- 'SD, Linux, Mac OS, Solaris)'#010+ ++ '**2XR<x>_Prepend <x> to all linker search paths (BeOS, Darwin, FreeBSD'+ ++ ', Linux, Mac OS, Solaris',')'#010+ + '**2Xs_Strip all symbols from executable'#010+ + '**2XS_Try to link units statically (default, defines FPC_LINK_STATIC)'#010+ + '**2Xt_Link with static libraries (-static is passed to linker)'#010+ +- '**2XX_Try to smartl','ink units (defines FPC_LINK_SMART)'#010+ ++ '**2XX_Try to smartlink units (defines FPC_LINK_SMART)',#010+ + '**1*_'#010+ + '**1?_Show this help'#010+ + '**1h_Shows this help without waiting'#000 +--- fpcbuild-2.2.2/fpcsrc/compiler/ogelf.pas ++++ fpcbuild-2.2.2/fpcsrc/compiler/ogelf.pas +@@ -1021,6 +1021,10 @@ + symtabsect:=TElfObjSection.create_ext(ObjSectionList,'.symtab',SHT_SYMTAB,0,0,0,4,sizeof(telfsymbol)); + strtabsect:=TElfObjSection.create_ext(ObjSectionList,'.strtab',SHT_STRTAB,0,0,0,1,0); + shstrtabsect:=TElfObjSection.create_ext(ObjSectionList,'.shstrtab',SHT_STRTAB,0,0,0,1,0); ++ { "no executable stack" marker for Linux } ++ if (target_info.system in system_linux) and ++ not(cs_executable_stack in current_settings.moduleswitches) then ++ TElfObjSection.create_ext(ObjSectionList,'.note.GNU-stack',SHT_PROGBITS,0,0,0,1,0); + { insert the empty and filename as first in strtab } + strtabsect.writestr(#0); + strtabsect.writestr(ExtractFileName(current_module.mainsource^)+#0); +--- fpcbuild-2.2.2/fpcsrc/compiler/options.pas ++++ fpcbuild-2.2.2/fpcsrc/compiler/options.pas +@@ -1357,6 +1357,18 @@ + else + apptype:=app_tool; + end; ++ 'X': ++ begin ++ if (target_info.system in system_linux) then ++ begin ++ if UnsetBool(More, j) then ++ exclude(init_settings.moduleswitches,cs_executable_stack) ++ else ++ include(init_settings.moduleswitches,cs_executable_stack) ++ end ++ else ++ IllegalPara(opt); ++ end + else + IllegalPara(opt); + end; +--- fpcbuild-2.2.2/fpcsrc/rtl/linux/arm/cprt0.as ++++ fpcbuild-2.2.2/fpcsrc/rtl/linux/arm/cprt0.as +@@ -135,3 +135,5 @@ + 2: .long 0 + .long 2,0,0 + 3: .align 4 ++ ++.section .note.GNU-stack,"",%progbits +--- fpcbuild-2.2.2/fpcsrc/rtl/linux/arm/gprt0.as ++++ fpcbuild-2.2.2/fpcsrc/rtl/linux/arm/gprt0.as +@@ -90,3 +90,4 @@ + .long 2,0,0 + 3: .align 4 + ++.section .note.GNU-stack,"",%progbits +--- fpcbuild-2.2.2/fpcsrc/rtl/linux/arm/prt0.as ++++ fpcbuild-2.2.2/fpcsrc/rtl/linux/arm/prt0.as +@@ -108,3 +108,5 @@ + 2: .long 0 + .long 2,0,0 + 3: .align 4 ++ ++.section .note.GNU-stack,"",%progbits +--- fpcbuild-2.2.2/fpcsrc/rtl/linux/arm/ucprt0.as ++++ fpcbuild-2.2.2/fpcsrc/rtl/linux/arm/ucprt0.as +@@ -178,3 +178,5 @@ + 2: .long 0 + .long 2,0,0 + 3: .align 4 ++ ++.section .note.GNU-stack,"",%progbits +--- fpcbuild-2.2.2/fpcsrc/rtl/linux/i386/cprt0.as ++++ fpcbuild-2.2.2/fpcsrc/rtl/linux/i386/cprt0.as +@@ -105,3 +105,5 @@ + .set operatingsystem_parameter_envp,operatingsystem_parameters+0 + .set operatingsystem_parameter_argc,operatingsystem_parameters+4 + .set operatingsystem_parameter_argv,operatingsystem_parameters+8 ++ ++.section .note.GNU-stack,"",%progbits +--- fpcbuild-2.2.2/fpcsrc/rtl/linux/i386/cprt21.as ++++ fpcbuild-2.2.2/fpcsrc/rtl/linux/i386/cprt21.as +@@ -122,3 +122,5 @@ + .set operatingsystem_parameter_envp,operatingsystem_parameters+0 + .set operatingsystem_parameter_argc,operatingsystem_parameters+4 + .set operatingsystem_parameter_argv,operatingsystem_parameters+8 ++ ++.section .note.GNU-stack,"",%progbits +--- fpcbuild-2.2.2/fpcsrc/rtl/linux/i386/dllprt0.as ++++ fpcbuild-2.2.2/fpcsrc/rtl/linux/i386/dllprt0.as +@@ -72,3 +72,4 @@ + .set operatingsystem_parameter_argc,operatingsystem_parameters+4 + .set operatingsystem_parameter_argv,operatingsystem_parameters+8 + ++.section .note.GNU-stack,"",%progbits +--- fpcbuild-2.2.2/fpcsrc/rtl/linux/i386/gprt0.as ++++ fpcbuild-2.2.2/fpcsrc/rtl/linux/i386/gprt0.as +@@ -87,3 +87,5 @@ + .set operatingsystem_parameter_envp,operatingsystem_parameters+0 + .set operatingsystem_parameter_argc,operatingsystem_parameters+4 + .set operatingsystem_parameter_argv,operatingsystem_parameters+8 ++ ++.section .note.GNU-stack,"",%progbits +--- fpcbuild-2.2.2/fpcsrc/rtl/linux/i386/gprt21.as ++++ fpcbuild-2.2.2/fpcsrc/rtl/linux/i386/gprt21.as +@@ -136,3 +136,4 @@ + .set operatingsystem_parameter_argc,operatingsystem_parameters+4 + .set operatingsystem_parameter_argv,operatingsystem_parameters+8 + ++.section .note.GNU-stack,"",%progbits +--- fpcbuild-2.2.2/fpcsrc/rtl/linux/i386/prt0.as ++++ fpcbuild-2.2.2/fpcsrc/rtl/linux/i386/prt0.as +@@ -109,3 +109,4 @@ + + //.section .threadvar,"aw",@nobits + .comm ___fpc_threadvar_offset,4 ++.section .note.GNU-stack,"",%progbits +--- fpcbuild-2.2.2/fpcsrc/rtl/linux/powerpc/cprt0.as ++++ fpcbuild-2.2.2/fpcsrc/rtl/linux/powerpc/cprt0.as +@@ -117,3 +117,4 @@ + .comm operatingsystem_parameter_argc, 4 + .comm operatingsystem_parameter_argv, 4 + ++.section .note.GNU-stack,"",%progbits +--- fpcbuild-2.2.2/fpcsrc/rtl/linux/powerpc/prt0.as ++++ fpcbuild-2.2.2/fpcsrc/rtl/linux/powerpc/prt0.as +@@ -67,3 +67,5 @@ + .comm operatingsystem_parameter_envp,4 + .comm operatingsystem_parameter_argc,4 + .comm operatingsystem_parameter_argv,4 ++ ++.section .note.GNU-stack,"",%progbits +--- fpcbuild-2.2.2/fpcsrc/rtl/linux/powerpc64/cprt0.as ++++ fpcbuild-2.2.2/fpcsrc/rtl/linux/powerpc64/cprt0.as +@@ -433,3 +433,5 @@ + .comm operatingsystem_parameter_argc, 4 + .comm operatingsystem_parameter_argv, 8 + .comm operatingsystem_parameter_envp, 8 ++ ++.section .note.GNU-stack,"",%progbits +--- fpcbuild-2.2.2/fpcsrc/rtl/linux/powerpc64/gprt0.as ++++ fpcbuild-2.2.2/fpcsrc/rtl/linux/powerpc64/gprt0.as +@@ -439,3 +439,5 @@ + .comm operatingsystem_parameter_argc, 4 + .comm operatingsystem_parameter_argv, 8 + .comm operatingsystem_parameter_envp, 8 ++ ++.section .note.GNU-stack,"",%progbits +--- fpcbuild-2.2.2/fpcsrc/rtl/linux/powerpc64/prt0.as ++++ fpcbuild-2.2.2/fpcsrc/rtl/linux/powerpc64/prt0.as +@@ -376,3 +376,4 @@ + .comm operatingsystem_parameter_argv, 8 + .comm operatingsystem_parameter_envp, 8 + ++.section .note.GNU-stack,"",%progbits +--- /dev/null ++++ fpcbuild-2.2.2/fpcsrc/tests/webtbs/tw11563.pp +@@ -0,0 +1,40 @@ ++{ %target=linux} ++{ %result=216 } ++ ++program ExecStack; ++ procedure DoIt; ++ type ++ proc = procedure; ++ var ++{$if defined(cpupowerpc) or defined(cpupowerpc64)} ++ ret: longint; ++{$endif} ++{$if defined(cpui386) or defined(cpux86_64)} ++ ret: Byte; ++{$endif} ++{$ifdef cpuarm} ++ 'add arm code to test stack execution' ++{$endif} ++ DoNothing: proc; ++ ++ begin ++{$if defined(cpupowerpc) or defined(cpupowerpc64)} ++ { can't use proc(@ret) because linux/ppc64 always expects some kind of ++ trampoline ++ } ++ ret := ($4e shl 24) or ($80 shl 16) or ($00 shl 8) or $20; ++ asm ++ la r0, ret ++ mtctr r0 ++ bctrl ++ end; ++{$endif} ++{$if defined(cpui386) or defined(cpux86_64)} ++ ret := $C3; ++ DoNothing := proc(@ret); ++ DoNothing; ++{$endif} ++ end; ++begin ++ DoIt; ++end. diff --git a/dev-lang/fpc/fpc-2.0.0-r1.ebuild b/dev-lang/fpc/fpc-2.0.0-r1.ebuild deleted file mode 100644 index 310b7bdc46b3..000000000000 --- a/dev-lang/fpc/fpc-2.0.0-r1.ebuild +++ /dev/null @@ -1,161 +0,0 @@ -# Copyright 1999-2007 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/fpc/fpc-2.0.0-r1.ebuild,v 1.8 2007/03/10 14:43:24 vapier Exp $ - -inherit eutils - -MY_PV="2.0.0" -STABLE="2.0.0" - -SLOT="0" -LICENSE="GPL-2 LGPL-2.1 LGPL-2.1-FPC" -KEYWORDS="~amd64 ~ppc ~sparc ~x86" -DESCRIPTION="Free Pascal Compiler" -HOMEPAGE="http://www.freepascal.org/" -IUSE="doc" -SRC_URI="mirror://sourceforge/freepascal/fpc-${MY_PV}.source.tar.gz - x86? ( mirror://sourceforge/freepascal/fpc-${MY_PV}.i386-linux.tar ) - sparc? ( mirror://sourceforge/freepascal/fpc-${MY_PV}.sparc-linux.tar ) - ppc? ( mirror://sourceforge/freepascal/fpc-${MY_PV}.powerpc-linux.tar ) - amd64? ( mirror://sourceforge/freepascal/fpc-${MY_PV}.x86_64-linux.tar )" -DEPEND="!dev-lang/fpc-bin - doc? ( dev-tex/tex4ht )" -RDEPEND="!dev-lang/fpc-bin" -S=${WORKDIR}/fpc - -src_unpack() { - unpack ${A} || die "Unpacking ${A} failed!" - case ${ARCH} in - x86) - tar -xf binary.i386-linux.tar || die "Unpacking binary.i386-linux.tar failed!" - tar -zxf base.i386-linux.tar.gz || die "Unpacking base.i386-linux.tar.gz failed!" - ;; - sparc) - tar -xf binary.sparc-linux.tar || die "Unpacking binary.sparc-linux.tar - failed!" - tar -zxf base.sparc-linux.tar.gz || die "Unpacking - base.sparc-linux.tar.gz failed!" - ;; - ppc) - tar -xf binary.powerpc-linux.tar || die "Unpacking binary.powerpc-linux.tar failed!" - tar -zxf base.powerpc-linux.tar.gz || die "Unpacking base.powerpc-linux.tar.gz failed!" - ;; - amd64) - tar -xf binary.x86_64-linux.tar || die "Unpacking binary.x86_64-linux.tar failed!" - tar -zxf base.x86_64-linux.tar.gz || die "Unpacking base.x86_64-linux.tar.gz failed!" - ;; - esac -} - -set_pp() { - case ${ARCH} in - x86) - FPCARCH=386 - ;; - sparc) - FPCARCH=sparc - ;; - ppc) - FPCARCH=ppc - ;; - amd64) - FPCARCH=x64 - ;; - esac - - case $1 in - bootstrap) pp=${WORKDIR}/lib/fpc/${STABLE}/ppc${FPCARCH} ;; - new) pp=${S}/compiler/ppc${FPCARCH} ;; - *) die "set_pp: unknown argument: $1" ;; - esac -} - -src_compile() { - local pp d - - # Using the bootstrap compiler. - set_pp bootstrap - emake -j1 compiler_cycle PP=${pp} \ - || die "make compiler_cycle failed!" - - # Using the new compiler. - set_pp new - - # We cannot do this at once! - for d in rtl packages fcl; do - emake -j1 -C $d clean PP=${pp} || die "make -C $d clean failed!" - done - - emake -j1 rtl packages_base_all fcl packages_extra_all PP=${pp} \ - || die "make rtl packages_base_all fcl packages_extra_all failed!" - - emake -j1 utils PP=${pp} DATA2INC=${S}/utils/data2inc \ - || die "make utils failed!" - - cd ${S}/docs - use doc && make 4ht - # examples fail miserably in v.2.0.0, sent email upstream - # use examples && make linuxexamples -} - -src_install() { - local pp - set_pp new - - make compiler_install rtl_install fcl_install \ - packages_install utils_install man_install \ - PP="${pp}" FPCMAKE="${S}/utils/fpcm/fpcmake" \ - INSTALL_PREFIX="${D}usr" INSTALL_MANDIR="${D}usr/share/man" \ - doc_install INSTALL_DOCDIR="${D}usr/share/doc/${PF}/" \ - || die "make install failed!" - dohtml ${D}usr/share/doc/${PF}/faq.html - rm ${D}usr/share/doc/${PF}/faq.html - cd ${S}/docs - use doc && make INSTALL_DOCDIR="${D}usr/share/doc/${PF}/html" htmlinstall -} - -pkg_preinst() { - ${D}/usr/lib/fpc/${MY_PV}/samplecfg /usr/lib/fpc/${MY_PV} ${D}/etc - case ${ARCH} in - x86) - FPCARCH=386 - ;; - sparc) - FPCARCH=sparc - ;; - ppc) - FPCARCH=ppc - ;; - amd64) - FPCARCH=x64 - ;; - esac - ln -s ../lib/fpc/${MY_PV}/ppc${FPCARCH} ${D}/usr/bin/ -} - -pkg_postinst() { - # Using ewarn - it is really important for other ebuilds (e.g. Lazarus) - if [ -e /etc/._cfg0000_fpc.cfg ]; then - echo - ewarn "Make sure you etc-update /etc/fpc.cfg" - ewarn "Otherwise FPC will not work correctly." - echo - ebeep - fi - case ${ARCH} in - x86) - FPCARCH=386 - ;; - sparc) - FPCARCH=sparc - ;; - ppc) - FPCARCH=ppc - ;; - amd64) - FPCARCH=x64 - ;; - esac - elog "/usr/bin/ppc${FPCARCH} now points to the new binary:" - elog " /usr/lib/${PN}/${MY_PV}/ppc${FPCARCH}" -} diff --git a/dev-lang/fpc/fpc-2.0.2.ebuild b/dev-lang/fpc/fpc-2.0.2.ebuild deleted file mode 100644 index aa3b1f140fb0..000000000000 --- a/dev-lang/fpc/fpc-2.0.2.ebuild +++ /dev/null @@ -1,161 +0,0 @@ -# Copyright 1999-2007 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/fpc/fpc-2.0.2.ebuild,v 1.7 2007/07/13 06:25:50 mr_bones_ Exp $ - -inherit eutils - -PV_BIN="2.0.0" -S="${WORKDIR}/fpc" - -HOMEPAGE="http://www.freepascal.org/" -DESCRIPTION="Free Pascal Compiler" -SRC_URI="mirror://sourceforge/freepascal/fpc-${PV}.source.tar.gz - mirror://gentoo/fpc-man-${PV}.tar.gz - x86? ( mirror://gentoo/fpc-${PV_BIN}.i386-linux.tar ) - sparc? ( mirror://gentoo/fpc-${PV_BIN}.sparc-linux.tar ) - ppc? ( mirror://gentoo/fpc-${PV_BIN}.powerpc-linux.tar ) - amd64? ( mirror://gentoo/fpc-${PV_BIN}.x86_64-linux.tar ) - doc? ( mirror://gentoo/fpc-docs-${PV}.tar.gz )" - -SLOT="0" -LICENSE="GPL-2 LGPL-2.1 LGPL-2.1-FPC" -KEYWORDS="~amd64 ~ppc ~sparc ~x86" -IUSE="doc source" - -DEPEND="!dev-lang/fpc-bin - !dev-lang/fpc-source - net-misc/rsync" -RDEPEND="!dev-lang/fpc-bin - !dev-lang/fpc-source" - -src_unpack() { - unpack ${A} || die "Unpacking ${A} failed!" - case ${ARCH} in - x86) FPC_ARCH="i386" ;; - ppc) FPC_ARCH="powerpc" ;; - amd64) FPC_ARCH="x86_64" ;; - sparc) FPC_ARCH="sparc" ;; - *) die "This ebuild doesn't support ${ARCH}." ;; - esac - tar -xf binary.${FPC_ARCH}-linux.tar || die "Unpacking binary.${FPC_ARCH}-linux.tar failed!" - tar -zxf base.${FPC_ARCH}-linux.tar.gz || die "Unpacking base.${FPC_ARCH}-linux.tar.gz failed!" -} - -set_pp() { - case ${ARCH} in - x86) FPC_ARCH="386" ;; - ppc) FPC_ARCH="ppc" ;; - amd64) FPC_ARCH="x64" ;; - sparc) FPC_ARCH="sparc" ;; - *) die "This ebuild doesn't support ${ARCH}." ;; - esac - - case ${1} in - bootstrap) pp=${WORKDIR}/lib/fpc/${PV_BIN}/ppc${FPC_ARCH} ;; - new) pp=${S}/compiler/ppc${FPC_ARCH} ;; - *) die "set_pp: unknown argument: ${1}" ;; - esac -} - -src_compile() { - local pp d - - # Using the bootstrap compiler. - set_pp bootstrap - make -j1 compiler_cycle PP=${pp} || die "make compiler_cycle failed!" - - # Save new compiler from cleaning... - cp ${S}/compiler/ppc${FPC_ARCH} ${S}/ppc${FPC_ARCH}.new - # ...rebuild with current version... - make -j1 compiler_cycle PP=${S}/ppc${FPC_ARCH}.new || die "make compiler_cycle failed!" - # ..and clean up afterwards - rm ${S}/ppc${FPC_ARCH}.new - - # Using the new compiler. - set_pp new - - # We cannot do this at once! - for d in rtl packages fcl fv; do - make -j1 -C $d clean PP=${pp} || die "make -C $d clean failed!" - done - - make -j1 rtl packages_base_all fcl fv packages_extra_all PP=${pp} \ - || die "make rtl packages_base_all fcl packages_extra_all failed!" - - make -j1 utils PP=${pp} DATA2INC=${S}/utils/data2inc \ - || die "make utils failed!" -} - -src_install() { - local pp - set_pp new - - make compiler_install rtl_install fcl_install fv_install \ - packages_install utils_install \ - PP="${pp}" FPCMAKE="${S}/utils/fpcm/fpcmake" \ - INSTALL_PREFIX="${D}usr" || die "make install failed!" - - find ${WORKDIR}/fpc/ -type f -perm -o=x -exec rm '{}' \; - if use "source" ; then - ebegin "Copying source files" - # Use rsync since cp doesn't support exclusions - rsync -a \ - --exclude="*.#*" \ - --exclude="*.bak" \ - --exclude="*.cvsignore" \ - --exclude="*.o" \ - --exclude="*.orig" \ - --exclude="*.ow" \ - --exclude="*.ppl" \ - --exclude="*.ppu" \ - --exclude="*.ppw" \ - --exclude="*.rej" \ - --exclude="*.rst" \ - --exclude="*.xvpics" \ - --exclude="*.~*" \ - --exclude="CVS" \ - --exclude=".svn" \ - --exclude="fpcmade.i386-linux" \ - ${WORKDIR}/fpc/ ${D}usr/lib/fpc/src - eend $? || die - fi - - if use doc ; then - insinto /usr/share/doc/${PF} - doins ${WORKDIR}/fpc-docs-${PV}/*.pdf - fi - - doman ${WORKDIR}/fpc-man-${PV}/man{1,5}/* -} - -pkg_preinst() { - ${D}/usr/lib/fpc/${PV}/samplecfg /usr/lib/fpc/${PV} ${D}/etc - case ${ARCH} in - x86) FPC_ARCH="386" ;; - ppc) FPC_ARCH="ppc" ;; - amd64) FPC_ARCH="x64" ;; - sparc) FPC_ARCH="sparc" ;; - *) die "This ebuild doesn't support ${ARCH}." ;; - esac - ln -s ../lib/fpc/${PV}/ppc${FPC_ARCH} ${D}/usr/bin/ -} - -pkg_postinst() { - # Using ewarn - it is really important for other ebuilds (e.g. Lazarus) - if [ -e /etc/._cfg0000_fpc.cfg ]; then - echo - ewarn "Make sure you etc-update /etc/fpc.cfg" - ewarn "Otherwise FPC will not work correctly." - echo - ebeep - fi - case ${ARCH} in - x86) FPC_ARCH="386" ;; - ppc) FPC_ARCH="ppc" ;; - amd64) FPC_ARCH="x64" ;; - sparc) FPC_ARCH="sparc" ;; - *) die "This ebuild doesn't support ${ARCH}." ;; - esac - elog "/usr/bin/ppc${FPC_ARCH} now points to the new binary:" - elog " /usr/lib/${PN}/${PV}/ppc${FPC_ARCH}" -} diff --git a/dev-lang/fpc/fpc-2.0.4.ebuild b/dev-lang/fpc/fpc-2.0.4.ebuild deleted file mode 100644 index 0a1772f9ffd0..000000000000 --- a/dev-lang/fpc/fpc-2.0.4.ebuild +++ /dev/null @@ -1,148 +0,0 @@ -# Copyright 1999-2008 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/fpc/fpc-2.0.4.ebuild,v 1.7 2008/12/16 19:30:03 truedfx Exp $ - -inherit eutils - -# bug #183604 -RESTRICT="strip" - -PV_BIN="2.0.4" -S="${WORKDIR}/fpcbuild_${PV}_exp/fpcsrc" - -HOMEPAGE="http://www.freepascal.org/" -DESCRIPTION="Free Pascal Compiler" -SRC_URI="mirror://sourceforge/freepascal/fpcbuild-${PV}.tar.gz - x86? ( mirror://sourceforge/freepascal/fpc-${PV_BIN}.i386-linux.tar ) - sparc? ( mirror://sourceforge/freepascal/fpc-2.0.0.sparc-linux.tar ) - ppc? ( mirror://sourceforge/freepascal/fpc-${PV_BIN}.powerpc-linux.tar ) - amd64? ( mirror://sourceforge/freepascal/fpc-${PV_BIN}.x86_64-linux.tar ) - doc? ( mirror://gentoo/fpcdocs-${PV}.tar.bz2 )" - -SLOT="0" -LICENSE="GPL-2 LGPL-2.1 LGPL-2.1-FPC" -KEYWORDS="~amd64 ~ppc ~sparc ~x86" -IUSE="doc source" - -DEPEND="!dev-lang/fpc-bin - !dev-lang/fpc-source" - -src_unpack() { - case ${ARCH} in - x86) FPC_ARCH="i386" ;; - ppc) FPC_ARCH="powerpc" ;; - amd64) FPC_ARCH="x86_64" ;; - sparc) FPC_ARCH="sparc" ;; - *) die "This ebuild doesn't support ${ARCH}." ;; - esac - - unpack ${A} || die "Unpacking ${A} failed!" - - tar -xf binary.${FPC_ARCH}-linux.tar || die "Unpacking binary.${FPC_ARCH}-linux.tar failed!" - tar -xzf base.${FPC_ARCH}-linux.tar.gz || die "Unpacking base.${FPC_ARCH}-linux.tar.gz failed!" -} - -set_pp() { - case ${ARCH} in - x86) FPC_ARCH="386" ;; - ppc) FPC_ARCH="ppc" ;; - amd64) FPC_ARCH="x64" ;; - sparc) FPC_ARCH="sparc" ;; - *) die "This ebuild doesn't support ${ARCH}." ;; - esac - - case ${1} in - bootstrap) pp=${WORKDIR}/lib/fpc/${PV_BIN}/ppc${FPC_ARCH} ;; - new) pp=${S}/compiler/ppc${FPC_ARCH} ;; - *) die "set_pp: unknown argument: ${1}" ;; - esac -} - -src_compile() { - local pp - - # Using the bootstrap compiler. - set_pp bootstrap - - emake -j1 PP="${pp}" compiler_cycle || die "make compiler_cycle failed!" - - # Save new compiler from cleaning... - cp "${S}"/compiler/ppc${FPC_ARCH} "${S}"/ppc${FPC_ARCH}.new - - # ...rebuild with current version... - emake -j1 PP="${S}"/ppc${FPC_ARCH}.new compiler_cycle || die "make compiler_cycle failed!" - - # ..and clean up afterwards - rm "${S}"/ppc${FPC_ARCH}.new - - # Using the new compiler. - set_pp new - - emake -j1 PP="${pp}" rtl_clean || die "make rtl_clean failed" - - emake -j1 PP="${pp}" rtl packages_base_all fcl fv packages_extra_all utils || die "make failed" - - # Use pregenerated docs to avoid sandbox violations (#146804) - #if use doc ; then - # cd "${S}"/../fpcdocs - # emake -j1 pdf || die "make pdf failed!" - #fi -} - -src_install() { - local pp - set_pp new - - set -- PP="${pp}" FPCMAKE="${S}/utils/fpcm/fpcmake" \ - INSTALL_PREFIX="${D}"usr \ - INSTALL_DOCDIR="${D}"usr/share/doc/${P} \ - INSTALL_MANDIR="${D}"usr/share/man \ - INSTALL_SOURCEDIR="${D}"/usr/lib/fpc/${PV}/source - - emake -j1 "$@" compiler_install rtl_install fcl_install fv_install \ - packages_install utils_install || die "make install failed!" - - dosym ../lib/fpc/${PV}/ppc${FPC_ARCH} /usr/bin/ppc${FPC_ARCH} - - if ! has nodoc ${FEATURES} ; then - cd "${S}"/../install/doc - emake -j1 "$@" installdoc || die "make installdoc failed!" - fi - - if ! has noman ${FEATURES} ; then - cd "${S}"/../install/man - emake -j1 "$@" installman || die "make installman failed!" - fi - - if ! has nodoc ${FEATURES} && use doc ; then - insinto /usr/share/doc/${PF} - doins "${WORKDIR}"/${P}/*.pdf - #cd "${S}"/../fpcdocs - #emake -j1 "$@" pdfinstall || die "make pdfinstall failed" - fi - - if use source ; then - cd "${S}" - shift - emake -j1 PP="${D}"usr/bin/ppc${FPC_ARCH} "$@" sourceinstall || die "make sourceinstall failed!" - fi - - "${D}"usr/lib/fpc/${PV}/samplecfg /usr/lib/fpc/${PV} "${D}"etc - - rm -rf "${D}"usr/lib/fpc/lexyacc -} - -pkg_postinst() { - # Using ewarn - it is really important for other ebuilds (e.g. Lazarus) - if [ -e /etc/._cfg0000_fpc.cfg ]; then - echo - ewarn "Make sure you etc-update /etc/fpc.cfg" - ewarn "Otherwise FPC will not work correctly." - echo - ebeep - fi - - ewarn "The default configuration for fpc strips executables. This" - ewarn "will cause QA notices in ebuilds for software using fpc." - ewarn "You can remove -Xs from /etc/fpc.cfg to avoid this." -} diff --git a/dev-lang/fpc/fpc-2.2.2.ebuild b/dev-lang/fpc/fpc-2.2.2-r1.ebuild index 50203e8278ac..688bef283933 100644 --- a/dev-lang/fpc/fpc-2.2.2.ebuild +++ b/dev-lang/fpc/fpc-2.2.2-r1.ebuild @@ -1,12 +1,9 @@ -# Copyright 1999-2008 Gentoo Foundation +# Copyright 1999-2009 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/fpc/fpc-2.2.2.ebuild,v 1.3 2008/12/16 19:30:03 truedfx Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-lang/fpc/fpc-2.2.2-r1.ebuild,v 1.1 2009/03/14 17:29:50 truedfx Exp $ inherit eutils -# bug #183604 -RESTRICT="strip" - S="${WORKDIR}/fpcbuild-${PV}/fpcsrc" HOMEPAGE="http://www.freepascal.org/" @@ -25,6 +22,9 @@ IUSE="doc source" DEPEND="!dev-lang/fpc-bin !dev-lang/fpc-source" +RDEPEND="${DEPEND}" +DEPEND="${DEPEND} + >=sys-devel/binutils-2.19.1-r1" src_unpack() { case ${ARCH} in @@ -42,6 +42,8 @@ src_unpack() { cd "${S}" epatch "${FILESDIR}"/${P}-unneeded-symbols.patch + epatch "${FILESDIR}"/${P}-execstack.patch + sed -i -e 's/ -Xs / /g' $(find . -name Makefile) || die "sed failed" } set_pp() { diff --git a/dev-lang/lazarus/ChangeLog b/dev-lang/lazarus/ChangeLog index 13ce99d01008..2a47fa10d076 100644 --- a/dev-lang/lazarus/ChangeLog +++ b/dev-lang/lazarus/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for dev-lang/lazarus # Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/lazarus/ChangeLog,v 1.24 2009/03/07 22:32:52 fauli Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-lang/lazarus/ChangeLog,v 1.25 2009/03/14 17:29:50 truedfx Exp $ + +*lazarus-0.9.26-r1 (14 Mar 2009) + + 14 Mar 2009; Harald van Dijk <truedfx@gentoo.org> -lazarus-0.9.26.ebuild, + +lazarus-0.9.26-r1.ebuild: + Drop RESTRICT=strip, now that binutils is fixed 07 Mar 2009; Christian Faulhammer <fauli@gentoo.org> lazarus-0.9.26.ebuild: diff --git a/dev-lang/lazarus/lazarus-0.9.26.ebuild b/dev-lang/lazarus/lazarus-0.9.26-r1.ebuild index d948d048d291..54f8fe6b9970 100644 --- a/dev-lang/lazarus/lazarus-0.9.26.ebuild +++ b/dev-lang/lazarus/lazarus-0.9.26-r1.ebuild @@ -1,14 +1,11 @@ # Copyright 1999-2009 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/lazarus/lazarus-0.9.26.ebuild,v 1.3 2009/03/07 22:32:52 fauli Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-lang/lazarus/lazarus-0.9.26-r1.ebuild,v 1.1 2009/03/14 17:29:50 truedfx Exp $ EAPI=2 inherit eutils -# bug #183604 -RESTRICT="strip" - FPCVER="2.2.2" SLOT="0" # Note: Slotting Lazarus needs slotting fpc, see DEPEND. @@ -24,6 +21,8 @@ DEPEND="~dev-lang/fpc-${FPCVER}[source] >=x11-libs/gtk+-2.0" RDEPEND="${DEPEND} !=gnome-base/librsvg-2.16.1" +DEPEND="${DEPEND} + >=sys-devel/binutils-2.19.1-r1" S=${WORKDIR}/${PN} |