2008年11月18日火曜日

elementtree v1.3をpackageする。

このエントリーをブックマークに追加 このエントリーを含むはてなブックマーク
まずは準備。

昨日pythonのコードもかっぱらってきたが、1.2の中でも古い部類に入るようだ。ということで、1.3を自分でbugfixしたりpackageしたりする準備。ミラーはdaily syncする必要ないでしょう。開発止まってるみたいだし。


で、python setup.py bdist_rpmするも・・・あれ?

hard linking elementtree/TidyTools.py -> elementtree-1.3a3-20070912-preview/elementtree
hard linking elementtree/__init__.py -> elementtree-1.3a3-20070912-preview/elementtree
creating dist
tar -cf dist/elementtree-1.3a3-20070912-preview.tar elementtree-1.3a3-20070912-preview
gzip -f9 dist/elementtree-1.3a3-20070912-preview.tar
removing 'elementtree-1.3a3-20070912-preview' (and everything under it)
copying dist/elementtree-1.3a3-20070912-preview.tar.gz -> build/bdist.linux-x86_64/rpm/SOURCES
building RPMs
rpmbuild -ba --define _topdir /home/nori/Desktop/work/elementtree/work/build/bdist.linux-x86_64/rpm --clean build/bdist.linux-x86_64/rpm/SPECS/elementtree.spec
error: File /home/nori/Desktop/work/elementtree/work/build/bdist.linux-x86_64/rpm/SOURCES/elementtree-1.3a3_20070912_preview.tar.gz: No such file or directory
error: command 'rpmbuild' failed with exit status 1

なんでだ?

[nori@asama]~/Desktop/work/elementtree/work% ls build/bdist.linux-x86_64/rpm/SOURCES
elementtree-1.3a3-20070912-preview.tar.gz

は?!-と_が違う!

よくわからないが

#from distutils.core import setup
from setuptools import setup
...snip...
#version=open("VERSION").read().strip(),
version='1.3a3-20070912-preview',

とかしてsetup.cfgを追加してごまかす。gitなときはversionをみんなどうしているんだろう・・・。


追記:
原因はこの子ですね、おそらく。
/usr/lib64/python2.4/distutils/command/bdist_rpm.py
でこんなことになってます。しかしわかったところねぇ・・・。

def _make_spec_file(self):
"""Generate the text of an RPM spec file and return it as a
list of strings (one per line).
"""
# definitions and headers
spec_file = [
'%define name ' + self.distribution.get_name(),
'%define version ' + self.distribution.get_version().replace('-','_'),
'%define release ' + self.release.replace('-','_'),
'',
'Summary: ' + self.distribution.get_description(),
]

0 件のコメント: