-í
ì¶<c       s…   d  Z  d Z d k Z d k Z d k Z d k Z d k Td k l Z l	 Z	 d k
 l Z d k l Z d k Td 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 d1 d6 d: g Z h  d1 d4 <d6 d8 <d: d< <Z 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?  t  |  _ t  |  _ t  |  _ t  |  _ t  |  _ t  |  _ t  |  _ t  |  _	 t  |  _
 t  |  _ t  |  _ t  |  _ t  |  _ t  |  _ t  |  _ 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    s2  |  i d d d f ƒ |  i t j o7 |  i o t d ‚ n t i i |  i	 d ƒ |  _ n |  i
 t j o' |  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 oR xK d d f D]= } t
 i i | ƒ o | |  i j o |  i i | ƒ n qy 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    s5  t  o9 d GHd G|  i GHd G|  i GHd G|  i GHd G|  i GHn |  i o |  i } |  i	 | ƒ n^ h  } xJ d d d d	 d
 f D]3 } 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 oA t i i  |  i ƒ o |  i |  i | ƒ n t! d |  i ‚ n |  i" d ƒ d g }
 |  i$ o |
 i% d ƒ n) |  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& o= t- i- t i i | d
 d ƒ ƒ } |  i/ | d |  i ƒ n |  i$ o= t- i- t i i | d	 d ƒ ƒ } |  i/ | 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   *.rpms   */*.rpm(1   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	   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Ö  d |  i i ƒ  d |  i i ƒ  d |  i d d |  i i ƒ  g } | i d d d g ƒ |  i o | i	 d	 ƒ n | i	 d
 ƒ | i d |  i i
 ƒ  d |  i d d g ƒ |  i i ƒ  o | i	 d ƒ n x— d d d d d d f D]} } t |  t i | ƒ ƒ } t | ƒ t j o$ | i	 d | t i | ƒ f ƒ n) | t j	 o | i	 d | | f ƒ n qé W|  i i ƒ  d j o | i	 d |  i i ƒ  ƒ n |  i o | 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 | o[ | 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     C
- $

!
$
m ,
!
c    sÅ   | o | Sn g  } x t i t i | ƒ d ƒ D]p } t i | ƒ } | d d j o | i d | g ƒ n4 | d d j o | i | ƒ n | i d | ƒ q2 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   ÿ cL!	+	"	-	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   	