[FIX] setup.py: use the new openerp module.

- python setup.py build seems to work (it produces the same result as before).
- the install seems not good: code and data are duplicated in both site-packages and dist-packages.
  (This was already true before.)
- The bin/openerp-server is not good yet.

bzr revid: vmt@openerp.com-20110224121830-hte18v9zzvel5zb5
This commit is contained in:
Vo Minh Thu 2011-02-24 13:18:30 +01:00
parent 129a713b14
commit 7855fad593
2 changed files with 25 additions and 28 deletions

View File

@ -1,17 +1,16 @@
include rpminstall_sh.txt include rpminstall_sh.txt # TODO do we need this file ?
include README include README
include MANIFEST.in include MANIFEST.in # TODO do we really need this three files ?
include setup.nsi include setup.nsi
include setup.cfg include setup.cfg
include bin/import_xml.rng #include openerp/server.cert
include bin/server.cert #include openerp/server.pkey
include bin/server.pkey #include openerp/gpl.txt
include bin/gpl.txt
include man/openerp-server.1 include man/openerp-server.1
include man/openerp_serverrc.5 include man/openerp_serverrc.5
recursive-include pixmaps * recursive-include pixmaps *bmp *ico *png
recursive-include win32 * recursive-include win32 *.py *.bat
recursive-include doc * recursive-include openerp *css *csv *html *png *po *pot
recursive-include bin *xml *xsl *sql *rml *sxw *csv *rng recursive-include openerp *rml *rng *sql *sxw *xml *xsl *yml
graft bin/addons graft doc
global-exclude *pyc *~ global-exclude *pyc *~ # Exclude possible garbage from previous graft.

View File

@ -42,9 +42,7 @@ if os.name == 'nt':
import py2exe import py2exe
has_py2exe = True has_py2exe = True
sys.path.append(join(os.path.abspath(os.path.dirname(__file__)), "bin")) execfile(join('openerp', 'release.py'))
execfile(join('bin', 'release.py'))
if 'bdist_rpm' in sys.argv: if 'bdist_rpm' in sys.argv:
version = version.split('-')[0] version = version.split('-')[0]
@ -85,7 +83,7 @@ if sys.version_info < (2, 6):
os.walk = walk_followlinks os.walk = walk_followlinks
def find_addons(): def find_addons():
for root, _, names in os.walk(join('bin', 'addons'), followlinks=True): for root, _, names in os.walk(join('openerp', 'addons'), followlinks=True):
if '__openerp__.py' in names or '__terp__.py' in names: if '__openerp__.py' in names or '__terp__.py' in names:
yield basename(root), root yield basename(root), root
#look for extra modules #look for extra modules
@ -111,9 +109,9 @@ def data_files():
'''Build list of data files to be installed''' '''Build list of data files to be installed'''
files = [] files = []
if os.name == 'nt': if os.name == 'nt':
os.chdir('bin') os.chdir('openerp')
for (dp, dn, names) in os.walk('addons'): for (dp, dn, names) in os.walk('addons'):
files.append((dp, map(lambda x: join('bin', dp, x), names))) files.append((dp, map(lambda x: join('openerp', dp, x), names)))
os.chdir('..') os.chdir('..')
#for root, _, names in os.walk(join('bin','addons')): #for root, _, names in os.walk(join('bin','addons')):
# files.append((root, [join(root, name) for name in names])) # files.append((root, [join(root, name) for name in names]))
@ -121,7 +119,7 @@ def data_files():
files.append((root, [join(root, name) for name in names])) files.append((root, [join(root, name) for name in names]))
#for root, _, names in os.walk('pixmaps'): #for root, _, names in os.walk('pixmaps'):
# files.append((root, [join(root, name) for name in names])) # files.append((root, [join(root, name) for name in names]))
files.append(('.', [join('bin', 'import_xml.rng'),])) files.append(('.', [join('openerp', 'import_xml.rng'),]))
else: else:
man_directory = join('share', 'man') man_directory = join('share', 'man')
files.append((join(man_directory, 'man1'), ['man/openerp-server.1'])) files.append((join(man_directory, 'man1'), ['man/openerp-server.1']))
@ -134,9 +132,9 @@ def data_files():
files.append((join(doc_directory, 'migrate', '3.4.0-4.0.0'), files.append((join(doc_directory, 'migrate', '3.4.0-4.0.0'),
filter(isfile, glob.glob('doc/migrate/3.4.0-4.0.0/*')))) filter(isfile, glob.glob('doc/migrate/3.4.0-4.0.0/*'))))
openerp_site_packages = join(get_python_lib(prefix=''), 'openerp-server') openerp_site_packages = join(get_python_lib(prefix=''), 'openerp')
files.append((openerp_site_packages, [join('bin', 'import_xml.rng'),])) files.append((openerp_site_packages, [join('openerp', 'import_xml.rng'),]))
if sys.version_info[0:2] == (2,5): if sys.version_info[0:2] == (2,5):
files.append((openerp_site_packages, [ join('python25-compat','BaseHTTPServer.py'), files.append((openerp_site_packages, [ join('python25-compat','BaseHTTPServer.py'),
@ -144,7 +142,7 @@ def data_files():
join('python25-compat','SocketServer.py')])) join('python25-compat','SocketServer.py')]))
for addonname, add_path in find_addons(): for addonname, add_path in find_addons():
addon_path = join(get_python_lib(prefix=''), 'openerp-server','addons', addonname) addon_path = join(get_python_lib(prefix=''), 'openerp','addons', addonname)
for root, dirs, innerfiles in os.walk(add_path): for root, dirs, innerfiles in os.walk(add_path):
innerfiles = filter(lambda fil: os.path.splitext(fil)[1] not in ('.pyc', '.pyd', '.pyo'), innerfiles) innerfiles = filter(lambda fil: os.path.splitext(fil)[1] not in ('.pyc', '.pyd', '.pyo'), innerfiles)
if innerfiles: if innerfiles:
@ -163,16 +161,16 @@ exit 1
f.close() f.close()
def find_package_dirs(): def find_package_dirs():
package_dirs = {'openerp-server': 'bin'} package_dirs = {'openerp': 'openerp'}
for mod, path in find_addons(): for mod, path in find_addons():
package_dirs['openerp-server.addons.' + mod] = path package_dirs['openerp.addons.' + mod] = path
return package_dirs return package_dirs
class openerp_server_install(install): class openerp_server_install(install):
def run(self): def run(self):
# create startup script # create startup script TODO not correct since the openerp lib was made
start_script = "#!/bin/sh\ncd %s\nexec %s ./openerp-server.py $@\n"\ start_script = "#!/bin/sh\ncd %s\nexec %s ./openerp-server.py $@\n"\
% (join(self.install_libbase, "openerp-server"), sys.executable) % (join(self.install_libbase, "openerp"), sys.executable)
# write script # write script
f = open('openerp-server', 'w') f = open('openerp-server', 'w')
f.write(start_script) f.write(start_script)
@ -214,7 +212,7 @@ setup(name = name,
}, },
scripts = ['openerp-server'], scripts = ['openerp-server'],
packages = [ packages = [
'.'.join(['openerp-server'] + package.split('.')[1:]) '.'.join(['openerp'] + package.split('.')[1:])
for package in find_packages() for package in find_packages()
], ],
include_package_data = True, include_package_data = True,
@ -224,7 +222,7 @@ setup(name = name,
package_dir = find_package_dirs(), package_dir = find_package_dirs(),
console = [ console = [
{ {
"script": join("bin", "openerp-server.py"), "script": "openerp-server.py",
"icon_resources": [(1, join("pixmaps","openerp-icon.ico"))] "icon_resources": [(1, join("pixmaps","openerp-icon.ico"))]
} }
], ],