From 3da784f3331a5ab9f8c7cc00d1bfbdd367d0b23a Mon Sep 17 00:00:00 2001 From: Mike khiretskiy Date: Thu, 30 Jan 2014 17:20:54 +0400 Subject: [PATCH] =?UTF-8?q?=D0=A3=D0=BF=D1=80=D0=BE=D1=89=D0=B5=D0=BD=20se?= =?UTF-8?q?tup.py?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- setup.cfg | 2 ++ setup.py | 82 ++++++------------------------------------------------- 2 files changed, 10 insertions(+), 74 deletions(-) create mode 100644 setup.cfg diff --git a/setup.cfg b/setup.cfg new file mode 100644 index 0000000..b15c456 --- /dev/null +++ b/setup.cfg @@ -0,0 +1,2 @@ +[install_data] +install_dir=/ diff --git a/setup.py b/setup.py index d2982f6..49ebf31 100755 --- a/setup.py +++ b/setup.py @@ -23,88 +23,22 @@ __version__ = "3.1.8" import os import stat from distutils.core import setup, Extension -from distutils.command.install_data import install_data -import distutils.command.build -import distutils.command.install -from os import system,path -import glob -import sys +from calculate.install_data import install_data -data_files = [] -data_files += [('/usr/share/calculate/xdm', ['data/cmd_login', +data_files = [('usr/share/calculate/xdm', [('data/cmd_login', 0755), 'data/functions', - 'data/xdm', - 'data/setbg'])] + \ - [('/usr/share/calculate/xdm/login.d', + ('data/xdm', 0755), + ('data/setbg', 0755)]), + ('usr/share/calculate/xdm/login.d', ['data/login.d/00init', 'data/login.d/20desktop', - 'data/login.d/99final'])] + \ - [('/usr/share/calculate/xdm/logout.d', + 'data/login.d/99final']), + ('usr/share/calculate/xdm/logout.d', ['data/logout.d/00init', 'data/logout.d/95syncface', 'data/logout.d/98umount'])] -def __scanDir(scanDir, prefix, replace_dirname, dirData, flagDir=False): - """Scan directory""" - files = [] - dirs = [] - if flagDir or stat.S_ISDIR(os.stat(scanDir)[stat.ST_MODE]): - for fileOrDir in os.listdir(scanDir): - absPath = os.path.join(scanDir,fileOrDir) - statInfo = os.stat(absPath)[stat.ST_MODE] - if stat.S_ISREG(statInfo): - files.append(absPath) - elif stat.S_ISDIR(statInfo): - dirs.append(absPath) - if replace_dirname: - listDirs = list(scanDir.partition("/"))[1:] - listDirs.insert(0,replace_dirname) - scanDir = "".join(listDirs) - if prefix: - scanDir = os.path.join(prefix,scanDir) - dirData.append((scanDir, files)) - for sDir in dirs: - __scanDir(sDir, prefix, replace_dirname,dirData, True) - return dirData - -def create_data_files(data_dirs, prefix="", replace_dirname=""): - """Create data_files""" - data_files = [] - for data_dir in data_dirs: - data = [] - data_files += __scanDir(data_dir, prefix, replace_dirname, data) - return data_files - -class cl_install_data(install_data): - def run (self): - install_data.run(self) - data_file = [("/usr/share/calculate/xdm/cmd_login",0755), - ("/usr/share/calculate/xdm/xdm",0755)] - fileNames = map(lambda x: os.path.split(x[0])[1], data_file) - listNames = map(lambda x: filter(lambda y: y, x[0].split("/")), - data_file) - data_find = {} - for i in range(len(fileNames)): - listNames[i].reverse() - data_find[fileNames[i]] =[listNames[i],data_file[i][1]] - - for path in self.get_outputs(): - nameFile = os.path.split(path)[1] - if nameFile in data_find.keys(): - data = data_find[nameFile][0] - mode = data_find[nameFile][1] - flagFound = True - iMax = len(data) - pathFile = path - for i in range(iMax): - if data[i] != os.path.split(pathFile)[1]: - flagFound = False - break - pathFile = os.path.split(pathFile)[0] - if flagFound: - os.chmod(path, mode) - setup( name = __app__, version = __version__, @@ -120,4 +54,4 @@ setup( library_dirs = ['/usr/lib'], libraries = ['keyutils'], sources = ['./lib/cl_keys.i', './lib/cl_keys.c'])], - cmdclass={'install_data': cl_install_data}) + cmdclass={'install_data': install_data})