-í
ì¶<c       s¦     d  Z    d Z 
 d k Z d k Z d k Z  d k Z  d k T d k l Z l	 Z	  d k
 l Z  d k l Z  d k T d e f d „  ƒ  YZ d S(	   sw   distutils.command.bdist_rpm

Implements the Distutils 'bdist_rpm' command (create RPM source and binary
distributions).s:   $Id: bdist_rpm.py,v 1.27.6.1 2002/03/25 13:13:45 mwh Exp $N(   s   *(   s   Commands   DEBUG(   s   get_platform(   s
   write_files	   bdist_rpmc      s÷   t  Z  d Z  d e d f d e d f d d d f d	 e d
 f d e d f d e d f d e d f d e d f d e d f d e d f d e d f d e d f d e d f d e d f d e d  f d! e d" f d# e d$ f d% e d& f d' e d( f d) e d* f d+ e d, f d- e d. f d/ e d0 f d1 d2 d3 f d4 e d5 f d6 e d7 f d8 e d9 f d: e d; f d< e d= f g Z b d1 d6 d: g Z d h  d1 d4 <d6 d8 <d: d< <Z i d> „  Z ” d? „  Z ¶ d@ „  Z	 ã dA „  Z
 <dB „  Z ÎdC „  Z RS(D   Ns   create an RPM distributions   bdist-base=s/   base directory for creating built distributionss	   rpm-base=sd   base directory for creating RPMs (defaults to "rpm" under --bdist-base; must be specified for RPM 2)s	   dist-dir=s   dsD   directory to put final RPM files in (and .spec files if --spec-only)s   python=sM   path to Python interpreter to hard-code in the .spec file (default: "python")s
   fix-pythonsL   hard-code the exact path to the current Python interpreter in the .spec files	   spec-onlys   only regenerate spec files   source-onlys   only generate source RPMs   binary-onlys   only generate binary RPMs	   use-bzip2s7   use bzip2 instead of gzip to create source distributions   distribution-name=sg   name of the (Linux) distribution to which this RPM applies (*not* the name of the module distribution!)s   group=s9   package classification [default: "Development/Libraries"]s   release=s   RPM release numbers   serial=s   RPM serial numbers   vendor=sa   RPM "vendor" (eg. "Joe Blow <joe@example.com>") [default: maintainer or author from setup script]s	   packager=sA   RPM packager (eg. "Jane Doe <jane@example.net>")[default: vendor]s
   doc-files=s6   list of documentation files (space or comma-separated)s
   changelog=s   path to RPM changelogs   icon=s   name of icon files	   provides=s%   capabilities provided by this packages	   requires=s%   capabilities required by this packages
   conflicts=s-   capabilities which conflict with this packages   build-requires=s+   capabilities required to build this packages
   obsoletes=s*   capabilities made obsolete by this packages	   keep-temps   ks"   don't clean up RPM build directorys   no-keep-temps&   clean up RPM build directory [default]s   use-rpm-opt-flagss8   compile with RPM_OPT_FLAGS when building from source RPMs   no-rpm-opt-flagss&   do not pass any RPM CFLAGS to compilers	   rpm3-modes"   RPM 3 compatibility mode (default)s	   rpm2-modes   RPM 2 compatibility modec    s«  i j t  |  _ k t  |  _ l t  |  _ m t  |  _ n t  |  _ o t  |  _ p t  |  _ q t  |  _	 r t  |  _
 t t  |  _ u t  |  _ v t  |  _ w t  |  _ x t  |  _ y t  |  _ z t  |  _ { t  |  _ | t  |  _ ~ t  |  _  t  |  _ € t  |  _  t  |  _ ‚ t  |  _ ƒ t  |  _ „ t  |  _ … t  |  _ † t  |  _ ‡ t  |  _ ˆ t  |  _ ‰ t  |  _ Š t  |  _  ‹ t  |  _!  d |  _" Ž d |  _#  d |  _$ d  S(   Ni    i   (%   s   Nones   selfs
   bdist_bases   rpm_bases   dist_dirs   pythons
   fix_pythons	   spec_onlys   binary_onlys   source_onlys	   use_bzip2s   distribution_names   groups   releases   serials   vendors   packagers	   doc_filess	   changelogs   icons   prep_scripts   build_scripts   install_scripts   clean_scripts   pre_installs   post_installs   pre_uninstalls   post_uninstalls   preps   providess   requiress	   conflictss   build_requiress	   obsoletess	   keep_temps   use_rpm_opt_flagss	   rpm3_mode(   s   self(    (    s1   /usr/lib/python2.2/distutils/command/bdist_rpm.pys   initialize_optionsi sF   c    sn  ” • |  i d d d f ƒ – |  i t j o@ — |  i o ˜ t d ‚ n š t i i |  i	 d ƒ |  _ n œ |  i
 t j o0  |  i o ž t i |  _
 n   d |  _
 n ¡ |  i o ¢ t d ‚ n ¥ t i d j o ¦ t d t i ‚ n © |  i o |  i o ª t d	 ‚ n ® |  i i ƒ  o ¯ d
 |  _ n ± |  i d d d f ƒ ² |  i ƒ  d  S(   Ns   bdists
   bdist_bases)   you must specify --rpm-base in RPM 2 modes   rpms   pythons8   --python and --fix-python are mutually exclusive optionss   posixs9   don't know how to create RPM distributions on platform %ss6   cannot supply both '--source-only' and '--binary-only'i    s   dist_dir(   s   selfs   set_undefined_optionss   rpm_bases   Nones	   rpm3_modes   DistutilsOptionErrors   oss   paths   joins
   bdist_bases   pythons
   fix_pythons   syss
   executables   names   DistutilsPlatformErrors   binary_onlys   source_onlys   distributions   has_ext_moduless   use_rpm_opt_flagss   finalize_package_data(   s   self(    (    s1   /usr/lib/python2.2/distutils/command/bdist_rpm.pys   finalize_options” s&   "c    s  ¶ · |  i d d ƒ ¸ |  i d ¹ d |  i i ƒ  |  i i ƒ  f ƒ » |  i d ƒ ¼ |  i d ƒ ½ t |  i ƒ t j o^ ¾ xT d d f D¾ ]C } ¿ t
 i i | ƒ o | |  i j o À |  i i | ƒ n q‘ Wn Â |  i d	 d
 ƒ Ã |  i d ƒ Å |  i d ƒ Ç |  i d ƒ É |  i |  i ƒ |  _ Ë |  i d ƒ Í |  i d ƒ Î |  i d ƒ Ï |  i d ƒ Ð |  i d ƒ Ñ |  i d ƒ Ò |  i d ƒ Ó |  i d ƒ Ô |  i d ƒ Ú |  i d ƒ Û |  i d ƒ Ü |  i d ƒ Ý |  i d ƒ Þ |  i d ƒ d  S(   Ns   groups   Development/Librariess   vendors   %s <%s>s   packagers	   doc_filess   READMEs
   README.txts   releases   1s   serials   distribution_names	   changelogs   icons   prep_scripts   build_scripts   install_scripts   clean_scripts   pre_installs   post_installs   pre_uninstalls   post_uninstalls   providess   requiress	   conflictss   build_requiress	   obsoletes(   s   selfs   ensure_strings   distributions   get_contacts   get_contact_emails   ensure_string_lists   types	   doc_filess   ListTypes   readmes   oss   paths   existss   appends   _format_changelogs	   changelogs   ensure_filename(   s   selfs   readme(    (    s1   /usr/lib/python2.2/distutils/command/bdist_rpm.pys   finalize_package_data¶ s:   & 	&c    s0  ã å t  oH æ d GHç d G|  i GHè d G|  i GHé d G|  i GHê d G|  i GHn í |  i o  î |  i } ï |  i	 | ƒ np ñ h  } ò xS d d d d	 d
 f Dò ]9 } ó t i i |  i | ƒ | | <ô |  i	 | | ƒ q¤ Wõ | d } ù t i i | ú d |  i i ƒ  ƒ } û |  i t ü | |  i ƒ  f þ d | ƒ  |  i o d  Sn |  i d ƒ }	 |  i o d g |	 _ n 	d g |	 _ 
|  i d ƒ |	 i ƒ  d } | d } |  i | | ƒ |  i oJ t i i  |  i ƒ o |  i |  i | ƒ n t! d |  i ‚ n |  i" d ƒ d g }
 |  i$ o |
 i% d ƒ n2 |  i& o |
 i% d ƒ n  |
 i% d ƒ !|  i' o- "|
 i( d d t i) ƒ  |  i f g ƒ n $|  i* o %|
 i% d ƒ n &|
 i% | ƒ '|  i+ |
 ƒ ,|  i, oü -|  i& on .t- i- t i i | d
 d ƒ ƒ } /t/ o! t0 | ƒ d j p t1 d | ‚ 1|  i2 | d |  i ƒ n 3|  i$ on 4t- i- t i i | d	 d ƒ ƒ } 5t/ o! t0 | ƒ d j p t1 d | ‚ 7|  i2 | d |  i ƒ n n d  S(   Ns   before _get_package_data():s   vendor =s
   packager =s   doc_files =s   changelog =s   SOURCESs   SPECSs   BUILDs   RPMSs   SRPMSs   %s.specs   writing '%s's   sdists   bztars   gztari    s   icon file '%s' does not exists   building RPMss   rpms   -bss   -bbs   -bas   --defines   _topdir %s/%ss   --cleans   *.rpmi   s)   unexpected number of SRPM files found: %ss   */*.rpms(   unexpected number of RPM files found: %s(4   s   DEBUGs   selfs   vendors   packagers	   doc_filess	   changelogs	   spec_onlys   dist_dirs   spec_dirs   mkpaths   rpm_dirs   ds   oss   paths   joins   rpm_bases   distributions   get_names	   spec_paths   executes
   write_files   _make_spec_files   reinitialize_commands   sdists	   use_bzip2s   formatss   run_commands   get_archive_filess   sources
   source_dirs	   copy_files   icons   existss   DistutilsFileErrors   announces   rpm_cmds   source_onlys   appends   binary_onlys	   rpm3_modes   extends   getcwds	   keep_temps   spawns   dry_runs   globs   srpmss	   __debug__s   lens   AssertionErrors	   move_files   rpms(   s   selfs   rpmss   ds   sources   srpmss
   source_dirs	   spec_paths   rpm_dirs   spec_dirs   sdists   rpm_cmd(    (    s1   /usr/lib/python2.2/distutils/command/bdist_rpm.pys   runã sp   
	 	-%+%+c 	 
  s]  <?Ad |  i i ƒ  d |  i i ƒ  d |  i d d |  i i ƒ  g } P| i d d d g ƒ X|  i o Y| i	 d	 ƒ n [| i	 d
 ƒ ]| i d |  i i
 ƒ  d |  i d d g ƒ d|  i i ƒ  o e| i	 d ƒ n gx© d d d d d d f Dg]Œ } nt |  t i | ƒ ƒ } ot | ƒ t j o' p| i	 d | t i | ƒ f ƒ n/ q| t j	 o r| i	 d | | f ƒ n q
Wu|  i i ƒ  d j o! v| i	 d |  i i ƒ  ƒ n x|  i o y| i	 d |  i ƒ n {|  i o$ || i	 d t i |  i ƒ ƒ n |  i o' €| i	 d t i i |  i ƒ ƒ n ‚| i d d |  i i ƒ  g ƒ ”d |  i } •|  i  o –d | } n žd d  d! f d" d# | f d$ d% d& |  i f d' d( d) f d* d+ t f d, d- t f d. d/ t f d0 d1 t f g } ¬x¤ | D¬]™ \ } } } ¯t |  | ƒ } °| p | og ±| i d d2 | g ƒ ´| o/ µ| i t i% t& | d3 ƒ i' ƒ  d4 ƒ ƒ n ·| i	 | ƒ n q.W»| i d d5 d6 g ƒ Á|  i( o$ Â| i	 d7 t i |  i( ƒ ƒ n Ä|  i) o- Å| i d d8 g ƒ È| i |  i) ƒ n Ê| Sd9 S(:   si   Generate the text of an RPM spec file and return it as a
        list of strings (one per line).
        s   %define name s   %define version s   %define release s    s	   Summary: s   Name: %{name}s   Version: %{version}s   Release: %{release}s#   Source0: %{name}-%{version}.tar.bz2s"   Source0: %{name}-%{version}.tar.gzs   Copyright: s   Group: s(   BuildRoot: %{_tmppath}/%{name}-buildroots   Prefix: %{_prefix}s   BuildArchitectures: noarchs   Vendors   Packagers   Providess   Requiress	   Conflictss	   Obsoletess   %s: %ss   UNKNOWNs   Url: s   Distribution: s   BuildRequires: s   Icon: s   %descriptions   %s setup.py builds   env CFLAGS="$RPM_OPT_FLAGS" s   preps   prep_scripts   %setups   builds   build_scripts   installs   install_scriptsC   %s setup.py install --root=$RPM_BUILD_ROOT --record=INSTALLED_FILESs   cleans   clean_scripts   rm -rf $RPM_BUILD_ROOTs   pres   pre_installs   posts   post_installs   preuns   pre_uninstalls   postuns   post_uninstalls   %s   rs   
s   %files -f INSTALLED_FILESs   %defattr(-,root,root)s   %doc s
   %changelogN(*   s   selfs   distributions   get_names   get_versions   releases   get_descriptions	   spec_files   extends	   use_bzip2s   appends   get_licenses   groups   has_ext_moduless   fields   getattrs   strings   lowers   vals   types   ListTypes   joins   Nones   get_urls   distribution_names   build_requiress   icons   oss   paths   basenames   get_long_descriptions   pythons	   def_builds   use_rpm_opt_flagss   script_optionss   rpm_opts   attrs   defaults   splits   opens   reads	   doc_filess	   changelog(	   s   selfs	   def_builds   vals	   spec_files   defaults   rpm_opts   script_optionss   fields   attr(    (    s1   /usr/lib/python2.2/distutils/command/bdist_rpm.pys   _make_spec_file<sX   F0 	'"!$'"p
 
/$c    sõ   ÎÐÑ| o Ò| Sn Óg  } Ôx¢ t i t i | ƒ d ƒ DÔ]‚ } Õt i | ƒ } Ö| d d j o ×| i d | g ƒ n= Ø| d d j o Ù| i | ƒ n Û| i d | ƒ qD WÞ| d o ß| d =n á| Sd S(   sK   Format the changelog correctly and convert it to a list of strings
        s   
i    s   *s    s   -s     N(   s	   changelogs   new_changelogs   strings   splits   strips   lines   extends   append(   s   selfs	   changelogs   new_changelogs   line(    (    s1   /usr/lib/python2.2/distutils/command/bdist_rpm.pys   _format_changelogÎs   	 	(   s   __name__s
   __module__s   descriptions   Nones   user_optionss   boolean_optionss   negative_opts   initialize_optionss   finalize_optionss   finalize_package_datas   runs   _make_spec_files   _format_changelog(    (    (    s1   /usr/lib/python2.2/distutils/command/bdist_rpm.pys	   bdist_rpm s   		ÿ fL$+"-Y’(   s   __doc__s   __revision__s   syss   oss   strings   globs   typess   distutils.cores   Commands   DEBUGs   distutils.utils   get_platforms   distutils.file_utils
   write_files   distutils.errorss	   bdist_rpm(
   s   syss
   write_files   __revision__s   Commands   strings   get_platforms	   bdist_rpms   DEBUGs   globs   os(    (    s1   /usr/lib/python2.2/distutils/command/bdist_rpm.pys   ? s   	

