diff options
Diffstat (limited to 'cpp/RPMTools.py')
-rw-r--r-- | cpp/RPMTools.py | 620 |
1 files changed, 310 insertions, 310 deletions
diff --git a/cpp/RPMTools.py b/cpp/RPMTools.py index 06eb1c1ff98..698390914d0 100644 --- a/cpp/RPMTools.py +++ b/cpp/RPMTools.py @@ -44,51 +44,51 @@ class Package: self.group = group self.description = description self.filelist = filelist - self.other = other - self.prepTextGen = [] - self.buildTextGen = [] - self.installTextGen = [] + self.other = other + self.prepTextGen = [] + self.buildTextGen = [] + self.installTextGen = [] def writeHdr(self, ofile, version, release, installDir, targetHost): - ofile.write('%define _unpackaged_files_terminate_build 0\n') - ofile.write('\n%define core_arches %{ix86} x86_64\n') - ofile.write('Summary: ' + self.summary + '\n') - ofile.write('Name: ' + self.name + '\n') - ofile.write('Version: ' + version + '\n') - ofile.write('Release: ' + release + '\n') - if len(self.requires) != 0: + ofile.write('%define _unpackaged_files_terminate_build 0\n') + ofile.write('\n%define core_arches %{ix86} x86_64\n') + ofile.write('Summary: ' + self.summary + '\n') + ofile.write('Name: ' + self.name + '\n') + ofile.write('Version: ' + version + '\n') + ofile.write('Release: ' + release + '\n') + if len(self.requires) != 0: if self.requires.find('%version%'): self.requires = self.requires.replace('%version%', version) - ofile.write('Requires: ' + self.requires + '\n') - ofile.write('License: GPL\n') - ofile.write('Group:' + self.group + '\n') - ofile.write('Vendor: ZeroC, Inc\n') - ofile.write('URL: http://www.zeroc.com/\n') - - # - # major.minor is part of the URL, this needs to be parameterized. - # + ofile.write('Requires: ' + self.requires + '\n') + ofile.write('License: GPL\n') + ofile.write('Group:' + self.group + '\n') + ofile.write('Vendor: ZeroC, Inc\n') + ofile.write('URL: http://www.zeroc.com/\n') + + # + # major.minor is part of the URL, this needs to be parameterized. + # minorVer = version[0:3] - ofile.write('Source0: http://www.zeroc.com/download/Ice/' + minorVer + '/Ice-%{version}.tar.gz\n') - ofile.write('Source1: http://www.zeroc.com/download/Ice/' + minorVer + '/IceJ-%{version}-java2.tar.gz\n') - ofile.write('Source2: http://www.zeroc.com/download/Ice/' + minorVer + '/IcePy-%{version}.tar.gz\n') - ofile.write('Source3: http://www.zeroc.com/download/Ice/' + minorVer + '/IceCS-%{version}.tar.gz\n') - ofile.write('Source4: http://www.zeroc.com/download/Ice/' + minorVer + '/IceJ-%{version}-java5.tar.gz\n') - ofile.write('Source5: http://www.zeroc.com/download/Ice/' + minorVer + '/IcePHP-%{version}.tar.gz\n') + ofile.write('Source0: http://www.zeroc.com/download/Ice/' + minorVer + '/Ice-%{version}.tar.gz\n') + ofile.write('Source1: http://www.zeroc.com/download/Ice/' + minorVer + '/IceJ-%{version}-java2.tar.gz\n') + ofile.write('Source2: http://www.zeroc.com/download/Ice/' + minorVer + '/IcePy-%{version}.tar.gz\n') + ofile.write('Source3: http://www.zeroc.com/download/Ice/' + minorVer + '/IceCS-%{version}.tar.gz\n') + ofile.write('Source4: http://www.zeroc.com/download/Ice/' + minorVer + '/IceJ-%{version}-java5.tar.gz\n') + ofile.write('Source5: http://www.zeroc.com/download/Ice/' + minorVer + '/IcePHP-%{version}.tar.gz\n') ofile.write('Source6: http://www.zeroc.com/download/Ice/' + minorVer + '/THIRD_PARTY_LICENSE\n') - ofile.write('Source7: http://www.zeroc.com/download/Ice/' + minorVer + '/ice.ini\n') - ofile.write('Source8: http://www.zeroc.com/download/Ice/' + minorVer + '/README.Linux-RPM\n') + ofile.write('Source7: http://www.zeroc.com/download/Ice/' + minorVer + '/ice.ini\n') + ofile.write('Source8: http://www.zeroc.com/download/Ice/' + minorVer + '/README.Linux-RPM\n') ofile.write('Source9: http://www.zeroc.com/download/Ice/' + minorVer + '/SOURCES\n') - if targetHost != "suse": - ofile.write('Source10: http://www.zeroc.com/download/Ice/' + minorVer + '/IceRuby-%{version}.tar.gz\n') - - ofile.write('\n') - if len(installDir) != 0: - ofile.write('BuildRoot: ' + installDir + '\n') - else: - ofile.write('BuildRoot: /var/tmp/Ice-' + version + '-' + release + '-buildroot\n') + if targetHost != "suse": + ofile.write('Source10: http://www.zeroc.com/download/Ice/' + minorVer + '/IceRuby-%{version}.tar.gz\n') + + ofile.write('\n') + if len(installDir) != 0: + ofile.write('BuildRoot: ' + installDir + '\n') + else: + ofile.write('BuildRoot: /var/tmp/Ice-' + version + '-' + release + '-buildroot\n') ofile.write('\n') - ofile.write(''' + ofile.write(''' %ifarch x86_64 %define icelibdir lib64 %else @@ -99,109 +99,109 @@ class Package: ''') ofile.write('BuildRequires: mono-core >= 1.2.2\n') - ofile.write('\n%endif\n') + ofile.write('\n%endif\n') - buildRequiresList = ['python >= 2.3.4', 'python-devel >= 2.3.4', - 'expat >= 0.5.0', 'libstdc++ >= 3.2', 'gcc >= 3.2', 'gcc-c++ >= 3.2', 'tar', - 'binutils >= 2.10', 'openssl >= 0.9.7a', 'openssl-devel >= 0.9.7a', 'ncurses >= 5.4'] + buildRequiresList = ['python >= 2.3.4', 'python-devel >= 2.3.4', + 'expat >= 0.5.0', 'libstdc++ >= 3.2', 'gcc >= 3.2', 'gcc-c++ >= 3.2', 'tar', + 'binutils >= 2.10', 'openssl >= 0.9.7a', 'openssl-devel >= 0.9.7a', 'ncurses >= 5.4'] - if targetHost == "suse": - buildRequiresList.extend(['bzip >= 1.0.2', 'php5 >= 5.1.2', 'php5-devel >= 5.1.2']) - else: - buildRequiresList.extend(['bzip2-devel >= 1.0.2', 'bzip2-libs >= 1.0.2', 'db45 >= 4.5.20', - 'expat-devel >= 0.5.0', 'php >= 5.1.4', 'php-devel >= 5.1.4']) + if targetHost == "suse": + buildRequiresList.extend(['bzip >= 1.0.2', 'php5 >= 5.1.2', 'php5-devel >= 5.1.2']) + else: + buildRequiresList.extend(['bzip2-devel >= 1.0.2', 'bzip2-libs >= 1.0.2', 'db45 >= 4.5.20', + 'expat-devel >= 0.5.0', 'php >= 5.1.4', 'php-devel >= 5.1.4']) - for f in buildRequiresList: + for f in buildRequiresList: ofile.write('BuildRequires: ' + f + '\n') - ofile.write('\n') - - ofile.write('Provides: %s-%%{_arch}\n' % self.name) - ofile.write('%description\n') - ofile.write(self.description) - ofile.write('\n') - ofile.write('%prep\n') - for g in self.prepTextGen: - g(ofile, version, targetHost) - ofile.write('\n') - ofile.write('%build\n') - for g in self.buildTextGen: - g(ofile, version, targetHost) - ofile.write('\n') - ofile.write('%install\n') - for g in self.installTextGen: - g(ofile, version, targetHost) - ofile.write('\n') - ofile.write('%clean\n') - ofile.write('\n') - ofile.write('%changelog\n') - ofile.write('* Fri Dec 6 2006 ZeroC Staff\n') - ofile.write('- See source distributions or the ZeroC website for more information\n') - ofile.write(' about the changes in this release\n') - ofile.write('\n') + ofile.write('\n') + + ofile.write('Provides: %s-%%{_arch}\n' % self.name) + ofile.write('%description\n') + ofile.write(self.description) + ofile.write('\n') + ofile.write('%prep\n') + for g in self.prepTextGen: + g(ofile, version, targetHost) + ofile.write('\n') + ofile.write('%build\n') + for g in self.buildTextGen: + g(ofile, version, targetHost) + ofile.write('\n') + ofile.write('%install\n') + for g in self.installTextGen: + g(ofile, version, targetHost) + ofile.write('\n') + ofile.write('%clean\n') + ofile.write('\n') + ofile.write('%changelog\n') + ofile.write('* Fri Dec 6 2006 ZeroC Staff\n') + ofile.write('- See source distributions or the ZeroC website for more information\n') + ofile.write(' about the changes in this release\n') + ofile.write('\n') def writeFileList(self, ofile, version, intVersion, installDir): ofile.write('%defattr(644, root, root, 755)\n\n') for perm, f in self.filelist: prefix = '' - - # - # Select an RPM spec file attribute depending on the type of - # file or directory we've specified. - # + + # + # Select an RPM spec file attribute depending on the type of + # file or directory we've specified. + # if perm == 'exe' or perm == 'lib': prefix = '%attr(755, root, root) ' - elif perm == 'cfg': - prefix = '%config' - elif perm == 'xdir': - prefix = '%dir ' + elif perm == 'cfg': + prefix = '%config' + elif perm == 'xdir': + prefix = '%dir ' if f.find('%version%'): f = f.replace('%version%', version) if perm == 'lib' and f.endswith('.VERSION'): - fname = os.path.splitext(f)[0] + fname = os.path.splitext(f)[0] ofile.write(prefix + '/usr/' + fname + '.' + version + '\n') ofile.write(prefix + '/usr/' + fname + '.' + str(intVersion) + '\n') - elif perm == 'cfg': - ofile.write(f + '\n') - else: - ofile.write(prefix + '/usr/' + f + '\n') + elif perm == 'cfg': + ofile.write(f + '\n') + else: + ofile.write(prefix + '/usr/' + f + '\n') ofile.write('\n') def writePostInstall(self, ofile, version, intVersion, installDir): - pass + pass def writePostUninstall(self, ofile, version, intVersion, installDir): - pass + pass def writeFilesImpl(self, ofile, version, intVersion, installDir): ofile.write('%files\n') self.writeFileList(ofile, version, intVersion, installDir) - ofile.write('\n') + ofile.write('\n') - ofile.write('%post\n') - self.writePostInstall(ofile, version, intVersion, installDir) + ofile.write('%post\n') + self.writePostInstall(ofile, version, intVersion, installDir) - ofile.write('%postun\n') - self.writePostUninstall(ofile, version, intVersion, installDir) - ofile.write('\n') + ofile.write('%postun\n') + self.writePostUninstall(ofile, version, intVersion, installDir) + ofile.write('\n') def writeFiles(self, ofile, version, intVersion, installDir): - ofile.write('\n%ifarch %{core_arches}\n') - self.writeFilesImpl(ofile, version, intVersion, installDir) - ofile.write('\n%else\n') - ofile.write('%files\n') - ofile.write('\n%endif\n') + ofile.write('\n%ifarch %{core_arches}\n') + self.writeFilesImpl(ofile, version, intVersion, installDir) + ofile.write('\n%else\n') + ofile.write('%files\n') + ofile.write('\n%endif\n') def addPrepGenerator(self, gen): - self.prepTextGen.append(gen) + self.prepTextGen.append(gen) def addBuildGenerator(self, gen): - self.buildTextGen.append(gen) + self.buildTextGen.append(gen) def addInstallGenerator(self, gen): - self.installTextGen.append(gen) + self.installTextGen.append(gen) # # Represents subpackages in an RPM spec file. @@ -211,67 +211,67 @@ class Subpackage(Package): def writeFilesImpl(self, ofile, version, intVersion, installDir): ofile.write('%%files %s\n' % self.name) self.writeFileList(ofile, version, intVersion, installDir) - ofile.write('\n') + ofile.write('\n') - ofile.write('%%post %s\n' % self.name) - self.writePostInstall(ofile, version, intVersion, installDir) + ofile.write('%%post %s\n' % self.name) + self.writePostInstall(ofile, version, intVersion, installDir) - ofile.write('%%postun %s\n' % self.name) - self.writePostUninstall(ofile, version, intVersion, installDir) - ofile.write('\n') + ofile.write('%%postun %s\n' % self.name) + self.writePostUninstall(ofile, version, intVersion, installDir) + ofile.write('\n') def writeFiles(self, ofile, version, intVersion, installDir): - ofile.write('\n%ifarch %{core_arches}\n') - self.writeFilesImpl(ofile, version, intVersion, installDir) - ofile.write('\n%endif\n') + ofile.write('\n%ifarch %{core_arches}\n') + self.writeFilesImpl(ofile, version, intVersion, installDir) + ofile.write('\n%endif\n') def writeSubpackageHeader(self, ofile, version, release, installDir): ofile.write('%package ' + self.name + '\n') ofile.write('Summary: ' + self.summary + '\n') ofile.write('Group: ' + self.group + '\n') - if len(self.requires) != 0: + if len(self.requires) != 0: if self.requires.find('%version%'): self.requires = self.requires.replace('%version%', version) - ofile.write('Requires: ' + self.requires + '\n') - if len(self.other) != 0: - ofile.write(self.other + '\n') + ofile.write('Requires: ' + self.requires + '\n') + if len(self.other) != 0: + ofile.write(self.other + '\n') ofile.write('%description ' + self.name + '\n') ofile.write(self.description) def writeHdr(self, ofile, version, release, installDir, targetHost): - ofile.write('\n%ifarch %{core_arches}\n') - self.writeSubpackageHeader(ofile, version, release, installDir) - ofile.write('\n%endif\n') + ofile.write('\n%ifarch %{core_arches}\n') + self.writeSubpackageHeader(ofile, version, release, installDir) + ofile.write('\n%endif\n') class NoarchSubpackage(Subpackage): def writeHdr(self, ofile, version, release, installDir, targetHost): - ofile.write('\n%ifarch noarch\n') - self.writeSubpackageHeader(ofile, version, release, installDir) - ofile.write('\n%endif\n') + ofile.write('\n%ifarch noarch\n') + self.writeSubpackageHeader(ofile, version, release, installDir) + ofile.write('\n%endif\n') def writeFiles(self, ofile, version, intVersion, installDir): - ofile.write('\n%ifarch noarch\n') - self.writeFilesImpl(ofile, version, intVersion, installDir) - ofile.write('\n%endif\n') + ofile.write('\n%ifarch noarch\n') + self.writeFilesImpl(ofile, version, intVersion, installDir) + ofile.write('\n%endif\n') class DotNetPackage(Subpackage): def writePostInstall(self, ofile, version, intVersion, installDir): - ofile.write('\n%ifnarch noarch\n') - ofile.write(''' + ofile.write('\n%ifnarch noarch\n') + ofile.write(''' pklibdir="%{icelibdir}" for f in icecs glacier2cs iceboxcs icegridcs icepatch2cs icestormcs; do sed -i.bak -e "s/^mono_root.*$/mono_root = \/usr/" /usr/$pklibdir/pkgconfig/$f.pc ; done - ''') - ofile.write('\n%endif\n') + ''') + ofile.write('\n%endif\n') class DotNetPackage(Subpackage): def writePostInstall(self, ofile, version, intVersion, installDir): - ofile.write('\n%ifnarch noarch\n') - ofile.write(''' + ofile.write('\n%ifnarch noarch\n') + ofile.write(''' pklibdir="lib" %ifarch x86_64 @@ -282,37 +282,37 @@ for f in icecs glacier2cs iceboxcs icegridcs icepatch2cs icestormcs; do sed -i.bak -e "s/^mono_root.*$/mono_root = \/usr/" /usr/$pklibdir/pkgconfig/$f.pc ; done - ''') - ofile.write('\n%endif\n') + ''') + ofile.write('\n%endif\n') # # NOTE: File transforms should be listed before directory transforms. # transforms = [ ('file', 'ice.ini', 'etc/php.d/ice.ini'), - ('dir', 'lib', 'usr/lib'), - ('dir', '%{icelibdir}', 'usr/%{icelibdir}'), - ('file', 'usr/%{icelibdir}/IcePHP.so', 'usr/%{icelibdir}/php/modules/IcePHP.so'), - ('file', 'usr/lib/Ice.jar', 'usr/lib/Ice-%version%/Ice.jar' ), - ('dir', 'usr/lib/java2', 'usr/lib/Ice-%version%/java2' ), - ('file', 'usr/lib/IceGridGUI.jar', 'usr/lib/Ice-%version%/IceGridGUI.jar' ), - ('file', 'bin/icecs.dll', 'usr/lib/mono/gac/icecs/%version%.0__1f998c50fec78381/icecs.dll'), - ('file', 'bin/glacier2cs.dll', - 'usr/lib/mono/gac/glacier2cs/%version%.0__1f998c50fec78381/glacier2cs.dll'), - ('file', 'bin/iceboxcs.dll', - 'usr/lib/mono/gac/iceboxcs/%version%.0__1f998c50fec78381/iceboxcs.dll'), - ('file', 'bin/icegridcs.dll', - 'usr/lib/mono/gac/icegridcs/%version%.0__1f998c50fec78381/icegridcs.dll'), - ('file', 'bin/icepatch2cs.dll', - 'usr/lib/mono/gac/icepatch2cs/%version%.0__1f998c50fec78381/icepatch2cs.dll'), - ('file', 'bin/icestormcs.dll', - 'usr/lib/mono/gac/icestormcs/%version%.0__1f998c50fec78381/icestormcs.dll'), - ('dir', 'ant', 'usr/lib/Ice-%version%/ant'), - ('dir', 'config', 'usr/share/Ice-%version%'), - ('dir', 'slice', 'usr/share/slice'), - ('dir', 'bin', 'usr/bin'), - ('dir', 'include', 'usr/include'), - ('dir', 'python', 'usr/%{icelibdir}/Ice-%version%/python'), - ('dir', 'ruby', 'usr/%{icelibdir}/Ice-%version%/ruby'), + ('dir', 'lib', 'usr/lib'), + ('dir', '%{icelibdir}', 'usr/%{icelibdir}'), + ('file', 'usr/%{icelibdir}/IcePHP.so', 'usr/%{icelibdir}/php/modules/IcePHP.so'), + ('file', 'usr/lib/Ice.jar', 'usr/lib/Ice-%version%/Ice.jar' ), + ('dir', 'usr/lib/java2', 'usr/lib/Ice-%version%/java2' ), + ('file', 'usr/lib/IceGridGUI.jar', 'usr/lib/Ice-%version%/IceGridGUI.jar' ), + ('file', 'bin/icecs.dll', 'usr/lib/mono/gac/icecs/%version%.0__1f998c50fec78381/icecs.dll'), + ('file', 'bin/glacier2cs.dll', + 'usr/lib/mono/gac/glacier2cs/%version%.0__1f998c50fec78381/glacier2cs.dll'), + ('file', 'bin/iceboxcs.dll', + 'usr/lib/mono/gac/iceboxcs/%version%.0__1f998c50fec78381/iceboxcs.dll'), + ('file', 'bin/icegridcs.dll', + 'usr/lib/mono/gac/icegridcs/%version%.0__1f998c50fec78381/icegridcs.dll'), + ('file', 'bin/icepatch2cs.dll', + 'usr/lib/mono/gac/icepatch2cs/%version%.0__1f998c50fec78381/icepatch2cs.dll'), + ('file', 'bin/icestormcs.dll', + 'usr/lib/mono/gac/icestormcs/%version%.0__1f998c50fec78381/icestormcs.dll'), + ('dir', 'ant', 'usr/lib/Ice-%version%/ant'), + ('dir', 'config', 'usr/share/Ice-%version%'), + ('dir', 'slice', 'usr/share/slice'), + ('dir', 'bin', 'usr/bin'), + ('dir', 'include', 'usr/include'), + ('dir', 'python', 'usr/%{icelibdir}/Ice-%version%/python'), + ('dir', 'ruby', 'usr/%{icelibdir}/Ice-%version%/ruby'), ('dir', 'doc', 'usr/share/doc/Ice-%version%/doc'), ('file', 'README', 'usr/share/doc/Ice-%version%/README'), ('file', 'ICE_LICENSE', 'usr/share/doc/Ice-%version%/ICE_LICENSE'), @@ -324,10 +324,10 @@ transforms = [ ('file', 'ice.ini', 'etc/php.d/ice.ini'), fileLists = [ Package('ice', '', - 'The Ice base runtime and services', + 'The Ice base runtime and services', 'System Environment/Libraries', - iceDescription, - 'Provides: ice-%{_arch}', + iceDescription, + 'Provides: ice-%{_arch}', [('xdir', 'share/doc/Ice-%version%'), ('doc', 'share/doc/Ice-%version%/ICE_LICENSE'), ('doc', 'share/doc/Ice-%version%/LICENSE'), @@ -363,121 +363,121 @@ fileLists = [ ('lib', '%{icelibdir}/libSlice.so.VERSION'), ('lib', '%{icelibdir}/libIceGrid.so.VERSION'), ('xdir', 'lib/Ice-%version%'), - ('file', 'lib/Ice-%version%/IceGridGUI.jar'), + ('file', 'lib/Ice-%version%/IceGridGUI.jar'), ('dir', 'share/slice'), ('dir', 'share/doc/Ice-%version%/doc'), - ('xdir', 'share/Ice-%version%'), - ('file', 'share/Ice-%version%/templates.xml'), - ('exe', 'share/Ice-%version%/convertssl.py'), + ('xdir', 'share/Ice-%version%'), + ('file', 'share/Ice-%version%/templates.xml'), + ('exe', 'share/Ice-%version%/convertssl.py'), ('exe', 'share/Ice-%version%/upgradeicegrid.py'), ('file', 'share/Ice-%version%/icegrid-slice.3.1.ice.gz')]), Subpackage('c++-devel', 'ice = %version%', 'Tools for developing Ice applications in C++', 'Development/Tools', - iceDescription, - 'Requires: ice-%{_arch}', + iceDescription, + 'Requires: ice-%{_arch}', [('exe', 'bin/slice2cpp'), ('exe', 'bin/slice2freeze'), ('dir', 'include'), - ('lib', '%{icelibdir}/libFreeze.so'), - ('lib', '%{icelibdir}/libGlacier2.so'), - ('lib', '%{icelibdir}/libIceBox.so'), - ('lib', '%{icelibdir}/libIceGrid.so'), - ('lib', '%{icelibdir}/libIcePatch2.so'), - ('lib', '%{icelibdir}/libIce.so'), - ('lib', '%{icelibdir}/libIceSSL.so'), - ('lib', '%{icelibdir}/libIceStormService.so'), - ('lib', '%{icelibdir}/libIceStorm.so'), - ('lib', '%{icelibdir}/libIceUtil.so'), - ('lib', '%{icelibdir}/libIceXML.so'), - ('lib', '%{icelibdir}/libSlice.so') - ]), + ('lib', '%{icelibdir}/libFreeze.so'), + ('lib', '%{icelibdir}/libGlacier2.so'), + ('lib', '%{icelibdir}/libIceBox.so'), + ('lib', '%{icelibdir}/libIceGrid.so'), + ('lib', '%{icelibdir}/libIcePatch2.so'), + ('lib', '%{icelibdir}/libIce.so'), + ('lib', '%{icelibdir}/libIceSSL.so'), + ('lib', '%{icelibdir}/libIceStormService.so'), + ('lib', '%{icelibdir}/libIceStorm.so'), + ('lib', '%{icelibdir}/libIceUtil.so'), + ('lib', '%{icelibdir}/libIceXML.so'), + ('lib', '%{icelibdir}/libSlice.so') + ]), DotNetPackage('csharp-devel', - 'ice-dotnet = %version%', - 'Tools for developing Ice applications in C#', - 'Development/Tools', - iceDescription, - 'Requires: ice-%{_arch}', - [('exe', 'bin/slice2cs'), - ('xdir', 'share/doc/Ice-%version%'), - ('file', '%{icelibdir}/pkgconfig/icecs.pc'), - ('file', '%{icelibdir}/pkgconfig/glacier2cs.pc'), - ('file', '%{icelibdir}/pkgconfig/iceboxcs.pc'), - ('file', '%{icelibdir}/pkgconfig/icegridcs.pc'), - ('file', '%{icelibdir}/pkgconfig/icepatch2cs.pc'), - ('file', '%{icelibdir}/pkgconfig/icestormcs.pc')]), + 'ice-dotnet = %version%', + 'Tools for developing Ice applications in C#', + 'Development/Tools', + iceDescription, + 'Requires: ice-%{_arch}', + [('exe', 'bin/slice2cs'), + ('xdir', 'share/doc/Ice-%version%'), + ('file', '%{icelibdir}/pkgconfig/icecs.pc'), + ('file', '%{icelibdir}/pkgconfig/glacier2cs.pc'), + ('file', '%{icelibdir}/pkgconfig/iceboxcs.pc'), + ('file', '%{icelibdir}/pkgconfig/icegridcs.pc'), + ('file', '%{icelibdir}/pkgconfig/icepatch2cs.pc'), + ('file', '%{icelibdir}/pkgconfig/icestormcs.pc')]), Subpackage('java-devel', 'ice-java = %version%', 'Tools for developing Ice applications in Java', 'Development/Tools', - iceDescription, - 'Requires: ice-%{_arch}', + iceDescription, + 'Requires: ice-%{_arch}', [('exe', 'bin/slice2java'), ('exe', 'bin/slice2freezej'), - ('xdir', 'lib/Ice-%version%'), - ('dir', 'lib/Ice-%version%/ant'), ]), + ('xdir', 'lib/Ice-%version%'), + ('dir', 'lib/Ice-%version%/ant'), ]), Subpackage('python', 'ice = %version%, python >= 2.3.4', 'The Ice runtime for Python applications', 'System Environment/Libraries', - iceDescription, - 'Requires: ice-%{_arch}', + iceDescription, + 'Requires: ice-%{_arch}', [('dir', '%{icelibdir}/Ice-%version%/python')]), Subpackage('python-devel', 'ice-python = %version%', 'Tools for developing Ice applications in Python', 'Development/Tools', - iceDescription, - 'Requires: ice-%{_arch}', + iceDescription, + 'Requires: ice-%{_arch}', [('exe', 'bin/slice2py')]), Subpackage('ruby', 'ice = %version%, ruby >= 1.8.1', 'The Ice runtime for Ruby applications', 'System Environment/Libraries', - iceDescription, - 'Requires: ice-%{_arch}', + iceDescription, + 'Requires: ice-%{_arch}', [('dir', '%{icelibdir}/Ice-%version%/ruby')]), Subpackage('ruby-devel', 'ice-ruby = %version%', 'Tools for developing Ice applications in Python', 'Development/Tools', - iceDescription, - 'Requires: ice-%{_arch}', + iceDescription, + 'Requires: ice-%{_arch}', [('exe', 'bin/slice2rb')]), Subpackage('php', - 'ice = %version%, php >= 5.1.2', - 'The Ice runtime for PHP applications', - 'System Environment/Libraries', - iceDescription, - 'Requires: ice-%{_arch}', - [('lib', '%{icelibdir}/php/modules'), ('cfg', '/etc/php.d/ice.ini')] - ), + 'ice = %version%, php >= 5.1.2', + 'The Ice runtime for PHP applications', + 'System Environment/Libraries', + iceDescription, + 'Requires: ice-%{_arch}', + [('lib', '%{icelibdir}/php/modules'), ('cfg', '/etc/php.d/ice.ini')] + ), NoarchSubpackage('java', - 'ice = %version%, db45-java >= 4.5.20', - 'The Ice runtime for Java', - 'System Environment/Libraries', - iceDescription, - '', - [ ('xdir', 'lib/Ice-%version%'), - ('file', 'lib/Ice-%version%/Ice.jar'), + 'ice = %version%, db45-java >= 4.5.20', + 'The Ice runtime for Java', + 'System Environment/Libraries', + iceDescription, + '', + [ ('xdir', 'lib/Ice-%version%'), + ('file', 'lib/Ice-%version%/Ice.jar'), ('xdir', 'lib/Ice-%version%/java2'), - ('file', 'lib/Ice-%version%/java2/Ice.jar') - ]), + ('file', 'lib/Ice-%version%/java2/Ice.jar') + ]), NoarchSubpackage('dotnet', 'ice = %version%, mono-core >= 1.2.2', - 'The Ice runtime for C# applications', - 'System Environment/Libraries', - iceDescription, - '', - [('dll', 'lib/mono/gac/glacier2cs/%version%.0__1f998c50fec78381/glacier2cs.dll'), - ('dll', 'lib/mono/gac/icecs/%version%.0__1f998c50fec78381/icecs.dll'), - ('dll', 'lib/mono/gac/iceboxcs/%version%.0__1f998c50fec78381/iceboxcs.dll'), - ('dll', 'lib/mono/gac/icegridcs/%version%.0__1f998c50fec78381/icegridcs.dll'), - ('dll', 'lib/mono/gac/icepatch2cs/%version%.0__1f998c50fec78381/icepatch2cs.dll'), - ('dll', 'lib/mono/gac/icestormcs/%version%.0__1f998c50fec78381/icestormcs.dll'), - ('exe', 'bin/iceboxnet.exe'), - ('exe', 'bin/iceboxadminnet.exe')]) + 'The Ice runtime for C# applications', + 'System Environment/Libraries', + iceDescription, + '', + [('dll', 'lib/mono/gac/glacier2cs/%version%.0__1f998c50fec78381/glacier2cs.dll'), + ('dll', 'lib/mono/gac/icecs/%version%.0__1f998c50fec78381/icecs.dll'), + ('dll', 'lib/mono/gac/iceboxcs/%version%.0__1f998c50fec78381/iceboxcs.dll'), + ('dll', 'lib/mono/gac/icegridcs/%version%.0__1f998c50fec78381/icegridcs.dll'), + ('dll', 'lib/mono/gac/icepatch2cs/%version%.0__1f998c50fec78381/icepatch2cs.dll'), + ('dll', 'lib/mono/gac/icestormcs/%version%.0__1f998c50fec78381/icestormcs.dll'), + ('exe', 'bin/iceboxnet.exe'), + ('exe', 'bin/iceboxadminnet.exe')]) ] ############################################################################ @@ -494,51 +494,51 @@ def _transformDirectories(transforms, version, installDir): cwd = os.getcwd() os.chdir(installDir) for type, source, dest in transforms: - dest = dest.replace('%version%', version) - source = source.replace('%version%', version) + dest = dest.replace('%version%', version) + source = source.replace('%version%', version) - libdir = 'lib' # Key on architecture. - dest = dest.replace('%{icelibdir}', libdir) - source = source.replace('%{icelibdir}', libdir) + libdir = 'lib' # Key on architecture. + dest = dest.replace('%{icelibdir}', libdir) + source = source.replace('%{icelibdir}', libdir) sourcedir = source destdir = dest - if os.path.exists('./tmp'): - shutil.rmtree('./tmp') - - try: - if not os.path.isdir(sourcedir): - if os.path.exists(source): - os.renames(source, dest) - else: - # - # This is a special problem. What this implies is that - # we are trying to move the contents of a directory into - # a subdirectory of itself. The regular shutil.move() - # won't cut it. - # - if os.path.isdir(sourcedir) and sourcedir.split("/")[0] == destdir.split("/")[0]: - os.renames(sourcedir, "./tmp/" + sourcedir) - os.renames("./tmp/" + sourcedir, destdir) - else: - print 'Renaming ' + source + ' to ' + dest - if os.path.exists(source): - os.renames(source, dest) - - except OSError: - print "Exception occurred while trying to transform " + source + " to " + dest - raise + if os.path.exists('./tmp'): + shutil.rmtree('./tmp') + + try: + if not os.path.isdir(sourcedir): + if os.path.exists(source): + os.renames(source, dest) + else: + # + # This is a special problem. What this implies is that + # we are trying to move the contents of a directory into + # a subdirectory of itself. The regular shutil.move() + # won't cut it. + # + if os.path.isdir(sourcedir) and sourcedir.split("/")[0] == destdir.split("/")[0]: + os.renames(sourcedir, "./tmp/" + sourcedir) + os.renames("./tmp/" + sourcedir, destdir) + else: + print 'Renaming ' + source + ' to ' + dest + if os.path.exists(source): + os.renames(source, dest) + + except OSError: + print "Exception occurred while trying to transform " + source + " to " + dest + raise os.chdir(cwd) def createArchSpecFile(ofile, installDir, version, soVersion, targetHost): for v in fileLists: - v.writeHdr(ofile, version, "1", installDir, targetHost) - ofile.write("\n\n\n") + v.writeHdr(ofile, version, "1", installDir, targetHost) + ofile.write("\n\n\n") for v in fileLists: - v.writeFiles(ofile, version, soVersion, installDir) - ofile.write("\n") + v.writeFiles(ofile, version, soVersion, installDir) + ofile.write("\n") def createFullSpecFile(ofile, installDir, version, soVersion, targetHost): fullFileList = fileLists @@ -548,21 +548,21 @@ def createFullSpecFile(ofile, installDir, version, soVersion, targetHost): fullFileList[0].addInstallGenerator(writeTransformCommands) for v in fullFileList: - # - # Skip ruby on SuSE - # - if targetHost == "suse" and v.name.startswith("ruby"): - continue - v.writeHdr(ofile, version, "1", '', targetHost) - ofile.write("\n\n\n") + # + # Skip ruby on SuSE + # + if targetHost == "suse" and v.name.startswith("ruby"): + continue + v.writeHdr(ofile, version, "1", '', targetHost) + ofile.write("\n\n\n") for v in fullFileList: - # - # Skip ruby on SuSE - # - if targetHost == "suse" and v.name.startswith("ruby"): - continue - v.writeFiles(ofile, version, soVersion, '') - ofile.write("\n") + # + # Skip ruby on SuSE + # + if targetHost == "suse" and v.name.startswith("ruby"): + continue + v.writeFiles(ofile, version, soVersion, '') + ofile.write("\n") def writeUnpackingCommands(ofile, version, targetHost): ofile.write('%setup -n Ice-%{version} -q -T -D -b 0\n') @@ -585,7 +585,7 @@ cd $RPM_BUILD_DIR cp $RPM_SOURCE_DIR/ice.ini $RPM_BUILD_DIR/IcePHP-%{version} """) if targetHost != "suse": - ofile.write(""" + ofile.write(""" %setup -q -n IceRuby-%{version} -T -D -b 10 sed -i -e 's/^prefix.*$/prefix = $\(RPM_BUILD_ROOT\)/' $RPM_BUILD_DIR/IceRuby-%{version}/config/Make.rules @@ -622,10 +622,10 @@ cd $RPM_BUILD_DIR/IcePHP-%{version} gmake OPTIMIZE=yes ICE_HOME=$RPM_BUILD_DIR/Ice-%{version} RPM_BUILD_ROOT=$RPM_BUILD_ROOT embedded_runpath_prefix="" """) if targetHost != "suse": - ofile.write(""" + ofile.write(""" cd $RPM_BUILD_DIR/IceRuby-%{version} gmake OPTIMIZE=yes ICE_HOME=$RPM_BUILD_DIR/Ice-%{version} RPM_BUILD_ROOT=$RPM_BUILD_ROOT embedded_runpath_prefix="" - """) + """) def writeInstallCommands(ofile, version, targetHost): ofile.write(""" @@ -677,10 +677,10 @@ done """) if targetHost != "suse": - ofile.write(""" + ofile.write(""" cd $RPM_BUILD_DIR/IceRuby-%{version} gmake OPTIMIZE=yes ICE_HOME=$RPM_BUILD_DIR/Ice-%{version} RPM_BUILD_ROOT=$RPM_BUILD_ROOT embedded_runpath_prefix="" install - """) + """) def writeTransformCommands(ofile, version, targetHost): # @@ -693,31 +693,31 @@ def writeTransformCommands(ofile, version, targetHost): ofile.write('# Linux system.\n') ofile.write('#\n\n') for type, source, dest in transforms: - dest = dest.replace('%version%', version) - source = source.replace('%version%', version) - if type == 'file': - ofile.write('# Rule 1\n') - ofile.write('mkdir -p $RPM_BUILD_ROOT/' + os.path.dirname(dest) + '\n') - ofile.write('mv $RPM_BUILD_ROOT/' + source + ' $RPM_BUILD_ROOT/' + dest + '\n') - elif type == 'dir': - if os.path.dirname(dest) <> '' and source.split('/')[0] == dest.split('/')[0]: - ofile.write('# Rule 2\n') - ofile.write('mkdir -p $RPM_BUILD_ROOT/arraftmp\n') - ofile.write('mkdir -p $RPM_BUILD_ROOT/arraftmp/%s\n' % os.path.dirname(source)) - ofile.write('mv $RPM_BUILD_ROOT/' + source + ' $RPM_BUILD_ROOT/arraftmp/' + source + '\n') - ofile.write('mkdir -p $RPM_BUILD_ROOT/' + os.path.dirname(dest) + '\n') - ofile.write('mv $RPM_BUILD_ROOT/arraftmp/' + source + ' $RPM_BUILD_ROOT/' + dest + '\n') - ofile.write('rm -rf $RPM_BUILD_ROOT/arraftmp\n') - elif os.path.dirname(dest) <> '': - ofile.write('# Rule 3\n') - ofile.write('if test -d $RPM_BUILD_ROOT/' + source + '\n') - ofile.write('then\n') - ofile.write(' mkdir -p $RPM_BUILD_ROOT/' + os.path.dirname(dest) + '\n') - ofile.write(' mv $RPM_BUILD_ROOT/' + source + ' $RPM_BUILD_ROOT/' + dest + '\n') - ofile.write('fi\n') - else: - ofile.write('# Rule 4\n') - ofile.write('mv $RPM_BUILD_ROOT/usr/' + source + ' $RPM_BUILD_ROOT/usr/' + dest + '\n') - + dest = dest.replace('%version%', version) + source = source.replace('%version%', version) + if type == 'file': + ofile.write('# Rule 1\n') + ofile.write('mkdir -p $RPM_BUILD_ROOT/' + os.path.dirname(dest) + '\n') + ofile.write('mv $RPM_BUILD_ROOT/' + source + ' $RPM_BUILD_ROOT/' + dest + '\n') + elif type == 'dir': + if os.path.dirname(dest) <> '' and source.split('/')[0] == dest.split('/')[0]: + ofile.write('# Rule 2\n') + ofile.write('mkdir -p $RPM_BUILD_ROOT/arraftmp\n') + ofile.write('mkdir -p $RPM_BUILD_ROOT/arraftmp/%s\n' % os.path.dirname(source)) + ofile.write('mv $RPM_BUILD_ROOT/' + source + ' $RPM_BUILD_ROOT/arraftmp/' + source + '\n') + ofile.write('mkdir -p $RPM_BUILD_ROOT/' + os.path.dirname(dest) + '\n') + ofile.write('mv $RPM_BUILD_ROOT/arraftmp/' + source + ' $RPM_BUILD_ROOT/' + dest + '\n') + ofile.write('rm -rf $RPM_BUILD_ROOT/arraftmp\n') + elif os.path.dirname(dest) <> '': + ofile.write('# Rule 3\n') + ofile.write('if test -d $RPM_BUILD_ROOT/' + source + '\n') + ofile.write('then\n') + ofile.write(' mkdir -p $RPM_BUILD_ROOT/' + os.path.dirname(dest) + '\n') + ofile.write(' mv $RPM_BUILD_ROOT/' + source + ' $RPM_BUILD_ROOT/' + dest + '\n') + ofile.write('fi\n') + else: + ofile.write('# Rule 4\n') + ofile.write('mv $RPM_BUILD_ROOT/usr/' + source + ' $RPM_BUILD_ROOT/usr/' + dest + '\n') + if __name__ == "main": print 'Ice RPM Tools module' |