[pygccxml-commit] SF.net SVN: pygccxml: [1024] installers
Brought to you by:
mbaas,
roman_yakovenko
|
From: <rom...@us...> - 2007-04-29 07:58:35
|
Revision: 1024
http://svn.sourceforge.net/pygccxml/?rev=1024&view=rev
Author: roman_yakovenko
Date: 2007-04-29 00:58:36 -0700 (Sun, 29 Apr 2007)
Log Message:
-----------
Modified Paths:
--------------
installers/install_gccxml.py
installers/utils.py
Modified: installers/install_gccxml.py
===================================================================
--- installers/install_gccxml.py 2007-04-29 06:37:59 UTC (rev 1023)
+++ installers/install_gccxml.py 2007-04-29 07:58:36 UTC (rev 1024)
@@ -24,9 +24,7 @@
utils.logger.info( 'GCC_XML build directory "%s" already exists' % build_dir )
if os.path.exists( config.gccxml_install_dir ):
- utils.logger.info( 'creating GCC_XML install directory "%s"' % config.gccxml_install_dir)
- shutil.rmtree( config.gccxml_install_dir )
- utils.logger.info( 'creating GCC_XML install directory "%s"- done' % config.gccxml_install_dir )
+ utils.rmtree_safe( config.gccxml_install_dir )
else:
utils.logger.info( 'GCC_XML install directory "%s" already exists' % config.gccxml_install_dir)
@@ -75,9 +73,7 @@
if not os.path.exists( ff_bin ):
shutil.copyfile( ff_shared, ff_bin )
- utils.logger.info( 'removing GCC_XML build directory' )
- shutil.rmtree( build_dir, True )
- utils.logger.info( 'removing GCC_XML build directory - done' )
+ utils.rmtree_safe( build_dir )
def install():
if 2 == len(sys.argv):
@@ -104,15 +100,13 @@
build_gccxml(working_dir)
finally:
- utils.logger.info( 'removing temporal directory "%s"' % working_dir )
- shutil.rmtree( working_dir )
- utils.logger.info( 'removing temporal directory "%s" - done' % working_dir )
+ utils.rmtree_safe( working_dir )
utils.logger.info( 'GCC_XML was successfully installed in "%s" directory' % config.gccxml_install_dir )
utils.logger.info( 'Uninstall instruction - delete GCC_XML install directory.' )
def create_dist_package():
- working_dir = os.path.abspath( os.path.dirname(sys.modules[__name__].__file__) )
+ working_dir = os.path.abspath( os.path.dirname(sys.modules[__name__].__file__) )
try:
gccxml_cvs_dir_name = os.path.splitext( config.archives.gccxml )[0]
gccxml_cvs_dir_path = os.path.join( working_dir, gccxml_cvs_dir_name )
@@ -121,7 +115,8 @@
utils.logger.info( 'coping gccxml directory - done' )
#TODO: remove cvs files from the directory
utils.logger.info( 'archiving gccxml "%s" directory ' % gccxml_cvs_dir_path )
- tar = tarfile.open( os.path.join( working_dir, config.archives.gccxml ), "w" )
+ gccxml_tar_file = os.path.join( working_dir, config.archives.gccxml )
+ tar = tarfile.open( gccxml_tar_file, "w" )
tar.add( gccxml_cvs_dir_path, gccxml_cvs_dir_name )
tar.close()
utils.logger.info( 'archiving gccxml "%s" directory - done' % gccxml_cvs_dir_path )
@@ -146,8 +141,9 @@
shutil.move( cmake_dir, cmake_archive_dir )
utils.logger.info( 'archiving cmake "%s" directory ' % cmake_archive_dir )
- tar = tarfile.open( os.path.join( working_dir, config.archives.cmake ), "w" )
- tar.add( cmake_archive_dir, config.archives.cmake )
+ cmake_tar_file = os.path.join( working_dir, config.archives.cmake )
+ tar = tarfile.open( cmake_tar_file, "w" )
+ tar.add( cmake_archive_dir, os.path.splitext( config.archives.cmake )[0] )
tar.close()
utils.logger.info( 'archiving cmake "%s" directory - done' % cmake_archive_dir )
@@ -171,8 +167,16 @@
utils.logger.info( 'unzipping "%s" file - done' % config.setup_builder.cmake_linux )
finally:
pass
- #shutil.rmtree( working_dir )
+ #create final zip file
+ package_dir = os.path.join( os.path.split( working_dir )[0]
+ , 'gccxml_%s_installer' % sys.platform )
+ utils.rmtree_safe( package_dir )
+ shutil.copytree( working_dir, package_dir )
+ utils.rmtree_safe( os.path.join( package_dir, '.svn' ) )
+ os.remove( cmake_tar_file )
+ os.remove( gccxml_tar_file )
+
if __name__ == "__main__":
- #install()
- create_dist_package()
+ install()
+ #create_dist_package()
Modified: installers/utils.py
===================================================================
--- installers/utils.py 2007-04-29 06:37:59 UTC (rev 1023)
+++ installers/utils.py 2007-04-29 07:58:36 UTC (rev 1024)
@@ -1,5 +1,6 @@
import os
import sys
+import stat
import shutil
import tarfile
import zipfile
@@ -63,10 +64,14 @@
def rmtree_safe( dir_ ):
+ for root, dirs, files in os.walk(dir_):
+ map( lambda f: os.chmod( os.path.join( root, f ), stat.S_IWRITE )
+ , files )
+
if not os.path.exists( dir_ ):
return
logger.info( 'removing "%s" directory ' % dir_ )
- shutil.rmtree( dir_ )
+ shutil.rmtree( dir_, True )
logger.info( 'removing "%s" directory - done' % dir_ )
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|