rpms/python/devel libpython-36a517ef7848cbd0b3dcc7371f32e47ac4c87eba.tar.gz, NONE, 1.1 python.spec, 1.165, 1.166

dmalcolm dmalcolm at fedoraproject.org
Sat Feb 6 00:37:39 UTC 2010


Author: dmalcolm

Update of /cvs/pkgs/rpms/python/devel
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv7651

Modified Files:
	python.spec 
Added Files:
	libpython-36a517ef7848cbd0b3dcc7371f32e47ac4c87eba.tar.gz 
Log Message:
* Fri Feb  5 2010 David Malcolm <dmalcolm at redhat.com> - 2.6.4-14
- add gdb hooks for easier debugging



--- NEW FILE libpython-36a517ef7848cbd0b3dcc7371f32e47ac4c87eba.tar.gz ---
‹ ú¥lK í<koä6’ùÜ¿‚×Æ@’Ó–Ÿ3ŒÇÙuæ‘pfÛ“\`
¶Äîf¬–´zØî,öÝßØ_¶UER¢m;“Éö¶	$VKd±Xï*’“òûñ,J&<ÏEöÕ—o;Ð^¼xA¡µÿÂǃ¯vw÷÷÷w÷övöžÃû݃ç;{_Íþ\:­ÌžÁ”Y’õ{ì{{qÿ&íù’ÅBÄÅÑþþ|÷¥˜¾üæà›`îLöà x¹ÿrwº¿'^òà ø楘ðÁÿ5ÎëöåZ$'鲘'ñöŸ7êÃË—ÏWë?<·ôçù‹¯žÿy(Õí?\ÿkþWO~ºü²s(û°‚ÿûû/_´ùÿüà9üý²hô·ÿpþoü×v™gÛo+î6ØÖæ8…PƳW¬,¦[ßà›Á|y“¤ËLÎæûçÿ°½Ýv.Bö/Fì$|ês9—9Ë“iqÇ3Áà9’ˆsèW$l™”¬Œ!Ì`Å\°ï?|b§"Ïáç÷"ØY9þ æT±[‘å2‰Ùž¿ËÜÓïÏNoáÉóa¡àøÈ~>>??þpù›&ÙB` Ä}šÁ,¾ÉEIŽ˜Œƒ¨Ä%"ú5ƒ) ó”ýøîüÍ öø»“Ó žd ìýÉå‡wìýÇsvÌÎŽÏ/OÞ|:=>ggŸÎÏ>^¼óÙ/°Æ|ž”QÈæüV°LBÞtTM— —§Âx” w²˜7?drÊâ(›æE‘¾ÚÞ¾»»ógqé'Ùl[6ßN¢p«úÍÒh ûÅ}AÑ,bEñÝ‚g79CÎ ìš5Š')Ÿ}HX*²…̉ô203¤Œâb™$f&€j/DßÅ~“ÄA’¥IÆq°Dùj¬“¸Rä,L‚Ã^ÀŒ IÌÂü¸ÉÌÜÜ{ÅÞò[	/ËÙœýÈ£ ‰ìu¸POÍD³úÐ|;pgð>KlNØK–Ä0Y˜ð§“³I)=ÙD Wâ©œ•0šmm!'¶”*Œ€9Qr‡B£°pè,îÄ
ËΨ#j|ñg>	 XÒŒgË­<œÊ€…¼àìVæ%äo´À|4ÈË`Îx®EV°7_Í..OY±LEî¤G
¶HÂ2,<ʍ¬ Þøp71ýJ³$@)ŸD8“r64]ø6Êx*2	3é^CàQ&åYÄã@x¨IÀM™Y=t_$À!³ Ær4ˆd|ƒÂ<ã2ÎQ„ŒÛ``4oeQÒ2‘‚‹z	Ðâ%ÀT,¢ôã÷lùqò«ŠMúƤ1F)õ 	Pôh	¨Ë¸À/2c<Q¥AOJ2ˆ8Bã$b a(¨I'æì&Nî"Î㓤,*å•èÁ´—€jm ­è;AB#²@-˜–Q‹¯J
8ËÀvk yCÐßiÆb0“´Î©ŒèqŒj‚°P( !3pM \ˆHÄg·<“|‰|0 Jç
”Ï@¨Á¾À0ä¨ÿJ”é”&±²q	|¬H¼§…k¡h¡™åÍÈÃÔœ
áÛý¦ C==˜„GοY÷)9lVNXÉ*Ñ/fS4æè¥Ç
æ`Ù”8dBXðh\Qf1#&’bž-/ˆæõœ@>ìjYkYÖªV,ªÂMq¹ xš¿0v5œ&ÉpĆž©?¿
¯ƒŸ˜À%"
X*ÚâI”$7e:FÕvAÓâ[ৗ¼M„f "Ä@ã°¹ÀäWƒJ³[ºÂ#—"7Ä5ê2¢_µZ‚èÎy;	 †Ë˜/”.ƒXq´dK^&=ŠIÚp<¢Ê §PÎõ¦A-¨g
yaLá$ÿUÓîù/HŒ«ûþ.ôÿøöã+À£(€8sø!waÊ¡á֐÷ t2É
2»ƒ â°Øe8+2÷)·ï²,É<d	ÈA5€òÀ¶qºÜ¿qõ”•†>%®Jù§?p
o!Œx¯ŒPŒ@–D&¤›†£)6Y*“›(‹„ˆLË8(”ÃdHaÒ°|¹`G¶À‹I¹ÎÙò»e!òñ%Ûñ®v®©;ø}è 0§Y}ß/Pìî m • Ûj=j~
¶*zoV2Aºr™•‚Þ‰(ÁABCó¬žf¯;Í{pR°ÍfYBOš'Ãáþ¾¡nwOS”Û†!aT@ò…ÚÄ,wa©­¢Z˶ûÊÀ9/'
bÀ!í¶ì…7 0*ª¼“ ¸4Õ`tÓÊ‹eb
;¬–¦t¥v™BˆŒ¯ ~H
݃_â>$E{EK\½Á0 èøðéôt¤^ °,hÙË´ 91Q‡Wšf€Oe‚üÁÉ
¡fƒL:f
ŽÂug<–±,ÆccŠ—ÀLŽ0Ø(Æ0ý,&^-> ®ú[ýÎ4ᏥðàcwWñª1M¡\9ºFt*Ej,q=NhCÌó÷¢0¶]Ë•‰¸”Ÿ"0¶04a¸.up^#‘Ò†x’“²
ÓöÁÉOAºÍzl?ãNJKkTG–5ÔÒTæ&îÆ?¼;~;D3ZAª¿ýt|®¿/x%¹ß ]õã$61êÞHÉ	La£=5˜~’Ía2!á )™‹dâtÔдSÏ\þ†=Q0ox åßJpË?€Ôþ¨^ƒ
ZÞXÅk!iP¯©heސ»à5¨øÐb—±ÏÂÂZñí:bÊKðCÕaè^£ýME&
/1ºå¹?Á4<Ê= x#C'<¸Qá—e»ü^AE»Î+gçzMmȸ¾µÝ Žð6¥Ú ÛM§Fi[·”BZPý™(ð›X<”ÐrízW8ÃuG×Wငmá 1R×VlT‚ÚýÖ‡ôc8‰û@€™´ã„&ÝÿœI-*ÎuÏüµ­Š˜°½b0ÌR»P‰R­‹§.¹2‡Ä+‡³%ºô¦ÐøÊ|VRây5(#ýÐv³Xµpmä¬á\ëöx[Ø/ðø‚ì™dÌÔûR•ê :XȁL
ÈWAêß!èŸCW0wž¤˜§EKñÛDR>“ç`)ynèv&èªM‚ª}­eÊßvXË¡  !`¤€È#¥m÷í¬ˆr›“ؤ6*fâKtn{«R¤Ú©Š¬¿Œ
ì
F¢÷`ÏSc±Z ó±^Š«0æ=¿ç@Æf0fš‰LSÁYEv Aš°Š<È$¨W“)F¶SKšÉ[бPrs‡a&™T'ã,(óä 'ÙÈ°H§k-À{ìÒ€±!çzþƒËè	kŠtŒú32•oEð¢ûAø¡Ÿú»i(ÐM?
z@T5=Óiír^?Ë1JÔ’¸sÿìþ[‡=c®Î¨1«eÿ;–µÆ_'ƒnt_t<_¥¶®)ëÙr7MØžš)þ²b^§Œ){tÚv¤E³¨ILë½ä¿’P/˜ð°2?&dƒœ5l7ˆòŠéÍàµÂP2´\•ì$“=<;[~Š%f—¡šž¨Ù6ÆÚiˆ=´…(ÃçávšôAb•µÂqU7Dh¼à)°öïL‰ó
ú“µ¨Fô³ÓÁ2õ~u6Up¢<6Ë54 ®$=Ј£:ÛTZѹ(Á’SïK|z¬;Uú¨û{|z¬{©dˆ´å©È?úd,°aQoäg>^éuÔ²Á>å*Á F9ŒŽ÷Ez@÷ЏƒD*ç2N!Ö ÅÓZÛ
\*ç®Bqšž§à*ÒLâïÐv¸võJEº6<¸I¡!O2tö‘eÑ!ƒ-¢Šà¯àlÀý語‚H!MË!L”küª¸ñ ¢‡¬+=ÕAHGu[ªïÔ¥}uÀF%}#6)S\Dßw—d7ˆÀRM~¹@5U5?,5õ֐PÌë’O~¸è2だDÄ¥t7¤ R‘UÛA IFæ¼V”ùv8bT¡ÞE‡Ì^«‚ú·!’âÄTÑE¨bmvAêJbRàÁ6§XØ£ŒË„Þ*’h%°ƒb8,u‰ ¤àÃÚnñ-êòcž—Ž§Ÿ™ñ
Ž©¶eΖã˳÷§Çß_ŒOO..ÇŸ¾{sz|qÁæÉÖd,1‚XêN‡[×iy Âê47ý yz²Û‹Åk–Ô59m1T¢£*ú
;…rCÎlÝبÁv\;Z`;4q¸Ý§€>©öú+üsñ„h (2ô†ÿû½ÖøÖ>“ƒÜVéµÒÌvð±:uÛ`?`ñH/Ð1D’
b7Å%`}rLʼnúK«À‚Ö­ŽÖÓ¤®ý¢³Ž‡âÆª`H7ƒjo	 -ª²œçkô¯Š¨M×jçêŸQNm€ÛdÒ¸cõÚør¥ÚÆõÚùUÿãƒåEk&ÇZŽíÛþøj*hÖbàÝ·Õ"Ø\H5‰µŽFó‡×QC«ÖÑÒ—\E=…óx¾®sMˆóê@
©Dã}Ÿñx&¥„‡¸"¿q¼–C©I?êŽnd:ûšÉ¦Ú©4²aÙünT!Ò+Âêì\7Ž:7¡!­ª¦Ñ\7bùÔ™ k{žšDWɯÈè]£ÕUÓ×/ÛF@
­e©ÞöÈS‹›Í!OਚË;Ã^ý…€žŒ9ˆLÆ\™ÞÌ~8wÖ#Èk<”;kx˜<ëÇÿ$Û}–{«íjµ
WæÝ´Í@«OÔŠœe<V„LÖl1ƒË/Ö}Žk`éq Ê–Çò¸>™Ä<ÃJµùÇ¥KYEsAša¿k=”ú­ÀA3¦)šôàQ% Ö qGy>ÂcÓ:±ôÖ*£b%ÏæÖ
=od¥£YwoìÑA§i*픶ìyµwP­0£Ä}
…6Æuᩝ¦×oÎbƒ®äõï íÕã² ½>‹Z·Ê=)ïô»h_Âó¼ëGfWžÀ°ªûËŽõÏÌ9„:›(¶Q؁`Ñü9H Ä$€XFÇGö
‚ötr¬GánØßÛêì¶;„r&i®v¯íÿ8¬¶>±hjÁˆúÖÌ>1¡ŸäI6D‰Á¾p—‹	äÓ @ü­Äì8éòóâӏ´
)vðP‚Çþ –«Ùçmíz5²òšm²½ÍM÷⇓÷—›²)Ähv+ô¼jóµªl›C,0{Ív+g¿‰,A\í[˜þGGlÇ*üßÑ)ÂÃ2TgZiŒÚóÔ26VýuÛßyr×Ýç½òTáfYÍŽøÛ${1½¥£Ó
]	KÇ2Ðk§¹)ÙÎxÝÉÇ	A`ÊÖ¶ŸZá,î´Î;õJ<ûß?¾{ÅNhƒ ë)Xf(Ô¹$Ï íÈûörôÐWD,K¨¼–TuB`[ ÖD¶¼\¸
|/µ_w‰­niKÔâBÛ>5‹‹(«¿cy°ݸi*a
8‰§‰ÞmnáÝ©´üp« ý8Fö€†—ëÅiƒ’$UŽÎ+!W†Áœg›õÞM3Æ—èBšg°”â7§‘q×+מ,W§OÚêCξŽÌê9M¨¨¶Ø›øti>Ôõ—'xÏŠú$€aB³Bý8¬þÿÏ
ªâ»_$ÜÐøŒ ãÑ0±¹cÿ8ûªîVy¢½‹ð8˜Æˆ'Ä/`qç^o](úùsû;¶³å8Ç•‰xVÌÛÞd§ôŒÑ@ÆZcÏ,ñ(ÛÜîûôáäÍÇ·ïØ&Èý!¾`çˆîP%.jò>‡¨¾ØþPÈI¥íž¸EØ̝¸>œhŽ	Ûóú@ƒ….^.YZ°TL`Áúôæbk.âÁ:°J¶ÉJ¾j€ä®PÈ*\É]µý“½vïÚFýMߊLŸ‚ǁz>ºæ¡É‰v‰`õiŒúµKQ7CLúØ£~¥ãø¿Âîvžgnä
ixPÛÕW«	S±­±Å¤;“Ö•qO
SÖUN—n=`ƒ©£Éê4KK  ÓÄbیѦ mC–ªƒú&°ƒEàYH‘5$|	N§n}ºÞ£°Î;Ç„<ö­nóDêDxV·cæ	»ªÆߌ†HàRµM¤OOkDÛPôkHÛŠÊÅ+€&Œì;ÿç]¦æGueAßÈõ±º\¡Ä£pl6À÷T™¦Í}B¥yÊãŸæ‡ ¡D£šÜcËq Qßé˜öX-EאžVYѝ«ÂJb
+px³ã3Aš¡°Ó1J`œ´Íª>½K$%Í{ëÍE©Ž}0ny¦®u‚Œ'-ÎŒïÀ®p»ºFs¢éÍ-K¹Ìê­XuL£2¯LssýÕw+lhÅ YFlogÇó^Áì<›Èïp±2MÁ¸çdt	Há½ B7¯,‚ÖGÅšÙ‰RGG=“XZl–ºŸVé¶×ƒæ½¯Ôýh¥û÷bÅ¡Îlö’°ÇѳWÕ[Ù5‹[Yo¤Žbw»%%>¶Ä¡K֝6ÍFj%T¥Úºív?Ëõ.÷3IÛÜÏr†b§ƒEU ®õ´÷pFCaW÷Ф·ƒ3bÆU:ÏrM÷fd{0O¹Nxy‹h[4ºöºÄöz®eœe”ûè
+ú•7+»—Xãv@Û`¯<²_$c}Ü¢Í
#!O“R=í»+5‰LoUƬ	àviâõÅvf6eXÚ2IײVeßhuö­ÂtQËqªÐ«T·ÑqŒê*þòËph¨	)ÕqbŸb¹#•7_þrönŒQÙøìò¼^†GÝžAºèz=©+Úk@û6J!ÎQ]möÖžºÜéx‘ËâÓ*€ýbPmðpõm™©ÍÕ[%)žo±çV¨Ët«+bx¥ïÆœ/а>G—¯öQžêr[¾ÌðŸŸBaš³=Ob;Ä[ÎÛê¾¾õ·…—=3¶ºI2€Qƒ]ßÊÞNC$ÀI©Ë?O›ˆPâ€u<¹‰ŒäVð<¼6‹Y¼¹ùL‹Ñ‡Eœ—™¨/T(qÓÒ¦ª£3ðÛ"á@N-Z€î”ER_žÃƒÚtøVæ’ÂJû¾â­  Ôwë4¾hsՍQH0ð†FÙtÆ]’’ñÜÜ€$îªæŸ6È	 ¬£ΆHU?]Y)£¼áñ”ºr	¶í€š¿ëïè1v/ýÐ5¹‰‚…êjÈÅpVë'UE!Æ{VµäÒKu!n°Ÿ%°BWÁ#¶4'º¿ß4•×ìµÀøÄ3(³Ä}€ˆèx at g@—ò\Ò? Ó Ã<ȶ%cÀ"™aÍëPî.1M!ë´¤‘&@1YÀÏ0¸H÷ó'™h]ÈÆë¡zè°Î«EtE4{ÜÔx‘¦z÷Ø\\%Ø]ø)±FÍÏ sÃ"IQÙFóÒÅ Ç,O+#¤B™©ÔÆx9)Úk=.
±Héà]&õzüwx at +¦ûBž×cs`ùXâ?¸¡.9#ÇfæŸR€W dz¥ •êl§Z„Þø KÈ¿»G
к-oÕ9f6UbGýšÔ©
¯:¯EÀžÓZ:Âs˘0E´éQéŒöx՝GgÕ=*6œ=gÔcº8îþtæOûy[ZÅã梦-¶É°úØÚSqظàù—6Lk†¹”ÝŒ*6¡óq¹ *MSÌñ&=Ø{ϧŽ¹kŸÕÑ¡x(³Z0j >ókømçl‰Òd‹”£Ã{H/6tJ4ê~ìÑn¿6â£S*|§X¹B$
ÜîR¼õ¿d¶në¶në¶në¶në¶në¶në¶në¶në¶në¶në¶në¶në¶në¶në¶në¶në¶në¶në¶në¶nÿ†í_M` x  

Index: python.spec
===================================================================
RCS file: /cvs/pkgs/rpms/python/devel/python.spec,v
retrieving revision 1.165
retrieving revision 1.166
diff -u -p -r1.165 -r1.166
--- python.spec	30 Jan 2010 00:17:35 -0000	1.165
+++ python.spec	6 Feb 2010 00:37:39 -0000	1.166
@@ -22,16 +22,40 @@
 %global dynload_dir %{pylibdir}/lib-dynload
 %global site_packages %{pylibdir}/site-packages
 
+%global with_gdb_hooks 1
+
 Summary: An interpreted, interactive, object-oriented programming language
 Name: %{python}
 Version: 2.6.4
-Release: 13%{?dist}
+Release: 14%{?dist}
 License: Python
 Group: Development/Languages
 Provides: python-abi = %{pybasever}
 Provides: python(abi) = %{pybasever}
 Source: http://www.python.org/ftp/python/%{version}/Python-%{version}.tar.bz2
 
+
+# We install a collection of hooks for gdb that make it easier to debug
+# executables linked against libpython (such as /usr/lib/python itself)
+#
+# These hooks are implemented in Python itself
+#
+# We'll install them into the same path as the library, with a -gdb.py suffix
+# e.g.
+#  /usr/lib/libpython2.6.so.1.0-gdb.py
+#
+# It would be better to put them in the -debuginfo subpackage e.g. here:
+#  /usr/lib/debug/usr/lib/libpython2.6.so.1.0.debug-gdb.py
+# but unfortunately it's hard to add custom content to a debuginfo subpackage
+#
+# See https://fedoraproject.org/wiki/Features/EasierPythonDebugging for more
+# information
+#
+# Downloaded from:
+# http://fedorapeople.org/gitweb?p=dmalcolm/public_git/libpython.git;a=snapshot;h=36a517ef7848cbd0b3dcc7371f32e47ac4c87eba;sf=tgz
+Source1: libpython-36a517ef7848cbd0b3dcc7371f32e47ac4c87eba.tar.gz
+
+
 # Modules/Setup.dist is ultimately used by the "makesetup" script to construct
 # the Makefile and config.c
 #
@@ -349,6 +373,12 @@ code that uses more than just unittest a
 %prep
 %setup -q -n Python-%{version}
 
+# Unpack source archive 1 into this same dir without deleting (-D; -T suppress
+# trying to unpack source 0 again):
+%if 0%{?with_gdb_hooks}
+%setup -q -n Python-%{version} -T -D -a 1
+%endif # with_gdb_hooks
+
 # Ensure that we're using the system copy of various libraries, rather than
 # copies shipped by upstream in the tarball:
 #   Remove embedded copy of expat:
@@ -587,6 +617,23 @@ ldd %{buildroot}/%{dynload_dir}/_curses*
     | grep curses \
     | grep libncurses.so && (echo "_curses.so linked against libncurses.so" ; exit 1)
 
+
+# Copy up the gdb hooks into place; the python file will be autoloaded by gdb
+# when visiting libpython.so, provided that the python file is installed to the
+# same path as the library (or its .debug file) plus a "-gdb.py" suffix, e.g:
+#  /usr/lib/libpython2.6.so.1.0-gdb.py
+#
+# Long term, this should probably go in the debuginfo subpackage, e.g:
+#  /usr/lib/debug/usr/lib/libpython2.6.so.1.0.debug-gdb.py
+#
+# We use a for loop here to avoid having the RHS of the cp command be quoted,
+# leading to a filename with a "*" character embedded in it
+%if 0%{?with_gdb_hooks}
+for lib in %{buildroot}%{_libdir}/libpython%{pybasever}.so.* ; do
+    cp libpython/libpython.py ${lib}-gdb.py
+done
+%endif # with_gdb_hooks
+
 %clean
 rm -fr %{buildroot}
 
@@ -733,6 +780,10 @@ rm -fr %{buildroot}
 %defattr(-,root,root,-)
 %doc LICENSE README
 %{_libdir}/libpython%{pybasever}.so.*
+%if 0%{?with_gdb_hooks}
+%{_libdir}/libpython%{pybasever}.so.*-gdb.py*
+%endif # with_gdb_hooks
+
 
 %files devel
 %defattr(-,root,root,-)
@@ -781,6 +832,9 @@ rm -fr %{buildroot}
 %{dynload_dir}/_testcapimodule.so
 
 %changelog
+* Fri Feb  5 2010 David Malcolm <dmalcolm at redhat.com> - 2.6.4-14
+- add gdb hooks for easier debugging
+
 * Fri Jan 29 2010 David Malcolm <dmalcolm at redhat.com> - 2.6.4-13
 - document all patches, and remove the commented-out ones
 



More information about the scm-commits mailing list