def build_launchers(self, debug=False): if not os.path.exists(self.obj_dir): os.makedirs(self.obj_dir) dflags = (['/Zi'] if debug else []) dlflags = (['/DEBUG'] if debug else ['/INCREMENTAL:NO']) base = self.j(self.src_root, 'setup', 'installer', 'windows') sources = [self.j(base, x) for x in ['util.c', 'MemoryModule.c']] headers = [self.j(base, x) for x in ['util.h', 'MemoryModule.h']] objects = [self.j(self.obj_dir, self.b(x)+'.obj') for x in sources] cflags = '/c /EHsc /MD /W3 /Ox /nologo /D_UNICODE'.split() cflags += ['/DPYDLL="python%s.dll"'%self.py_ver, '/IC:/Python%s/include'%self.py_ver] for src, obj in zip(sources, objects): if not self.newer(obj, headers+[src]): continue cmd = [msvc.cc] + cflags + dflags + ['/Fo'+obj, '/Tc'+src] self.run_builder(cmd, show_output=True) dll = self.j(self.obj_dir, 'calibre-launcher.dll') ver = '.'.join(__version__.split('.')[:2]) if self.newer(dll, objects): cmd = [msvc.linker, '/DLL', '/VERSION:'+ver, '/OUT:'+dll, '/nologo', '/MACHINE:'+machine] + dlflags + objects + \ [self.embed_resources(dll), '/LIBPATH:C:/Python%s/libs'%self.py_ver, 'python%s.lib'%self.py_ver, '/delayload:python%s.dll'%self.py_ver] self.info('Linking calibre-launcher.dll') self.run_builder(cmd, show_output=True) src = self.j(base, 'main.c') shutil.copy2(dll, self.base) for typ in ('console', 'gui', ): self.info('Processing %s launchers'%typ) subsys = 'WINDOWS' if typ == 'gui' else 'CONSOLE' for mod, bname, func in zip(modules[typ], basenames[typ], functions[typ]): xflags = list(cflags) if typ == 'gui': xflags += ['/DGUI_APP='] xflags += ['/DMODULE="%s"'%mod, '/DBASENAME="%s"'%bname, '/DFUNCTION="%s"'%func] dest = self.j(self.obj_dir, bname+'.obj') if self.newer(dest, [src]+headers): self.info('Compiling', bname) cmd = [msvc.cc] + xflags + dflags + ['/Tc'+src, '/Fo'+dest] self.run_builder(cmd) exe = self.j(self.base, bname+'.exe') lib = dll.replace('.dll', '.lib') if self.newer(exe, [dest, lib, self.rc_template, __file__]): self.info('Linking', bname) cmd = [msvc.linker] + ['/MACHINE:'+machine, '/LIBPATH:'+self.obj_dir, '/SUBSYSTEM:'+subsys, '/LIBPATH:C:/Python%s/libs'%self.py_ver, '/RELEASE', '/OUT:'+exe] + dlflags + [self.embed_resources(exe), dest, lib] self.run_builder(cmd)
def build_launchers(self, debug=False): if not os.path.exists(self.obj_dir): os.makedirs(self.obj_dir) dflags = ["/Zi"] if debug else [] dlflags = ["/DEBUG"] if debug else ["/INCREMENTAL:NO"] base = self.j(self.src_root, "setup", "installer", "windows") sources = [self.j(base, x) for x in ["util.c", "MemoryModule.c"]] headers = [self.j(base, x) for x in ["util.h", "MemoryModule.h"]] objects = [self.j(self.obj_dir, self.b(x) + ".obj") for x in sources] cflags = "/c /EHsc /MD /W3 /Ox /nologo /D_UNICODE".split() cflags += ['/DPYDLL="python%s.dll"' % self.py_ver, "/IC:/Python%s/include" % self.py_ver] for src, obj in zip(sources, objects): if not self.newer(obj, headers + [src]): continue cmd = [msvc.cc] + cflags + dflags + ["/Fo" + obj, "/Tc" + src] self.run_builder(cmd, show_output=True) dll = self.j(self.obj_dir, "calibre-launcher.dll") ver = ".".join(__version__.split(".")[:2]) if self.newer(dll, objects): cmd = ( [msvc.linker, "/DLL", "/VERSION:" + ver, "/OUT:" + dll, "/nologo", "/MACHINE:" + machine] + dlflags + objects + [ self.embed_resources(dll), "/LIBPATH:C:/Python%s/libs" % self.py_ver, "python%s.lib" % self.py_ver, "/delayload:python%s.dll" % self.py_ver, ] ) self.info("Linking calibre-launcher.dll") self.run_builder(cmd, show_output=True) src = self.j(base, "main.c") shutil.copy2(dll, self.base) for typ in ("console", "gui"): self.info("Processing %s launchers" % typ) subsys = "WINDOWS" if typ == "gui" else "CONSOLE" for mod, bname, func in zip(modules[typ], basenames[typ], functions[typ]): xflags = list(cflags) if typ == "gui": xflags += ["/DGUI_APP="] xflags += ['/DMODULE="%s"' % mod, '/DBASENAME="%s"' % bname, '/DFUNCTION="%s"' % func] dest = self.j(self.obj_dir, bname + ".obj") if self.newer(dest, [src] + headers): self.info("Compiling", bname) cmd = [msvc.cc] + xflags + dflags + ["/Tc" + src, "/Fo" + dest] self.run_builder(cmd) exe = self.j(self.base, bname + ".exe") lib = dll.replace(".dll", ".lib") if self.newer(exe, [dest, lib, self.rc_template, __file__]): self.info("Linking", bname) cmd = ( [msvc.linker] + [ "/MACHINE:" + machine, "/LIBPATH:" + self.obj_dir, "/SUBSYSTEM:" + subsys, "/LIBPATH:C:/Python%s/libs" % self.py_ver, "/RELEASE", "/OUT:" + exe, ] + dlflags + [self.embed_resources(exe), dest, lib] ) self.run_builder(cmd)
# The encoding of source files. #source_encoding = 'utf-8-sig' # The master toctree document. master_doc = 'index' # General information about the project. project = u'ObjectRocket Python Client' copyright = u'2014, ObjectRocket Engineering' # The version info for the project you're documenting, acts as replacement for # |version| and |release|, also used in various other places throughout the # built documents. # # The short X.Y version. version = '.'.join(__version__.split('.')[:2]) # The full version, including alpha/beta/rc tags. release = __version__ # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. #language = None # There are two options for replacing |today|: either, you set today to some # non-false value, then it is used: #today = '' # Else, today_fmt is used as the format for a strftime call. #today_fmt = '%B %d, %Y' # List of patterns, relative to source directory, that match files and
def build_launchers(self, debug=False): if not os.path.exists(self.obj_dir): os.makedirs(self.obj_dir) dflags = (['/Zi'] if debug else []) dlflags = (['/DEBUG'] if debug else ['/INCREMENTAL:NO']) base = self.j(self.src_root, 'setup', 'installer', 'windows') sources = [self.j(base, x) for x in ['util.c', 'MemoryModule.c']] headers = [self.j(base, x) for x in ['util.h', 'MemoryModule.h']] objects = [self.j(self.obj_dir, self.b(x) + '.obj') for x in sources] cflags = '/c /EHsc /MD /W3 /Ox /nologo /D_UNICODE'.split() cflags += [ '/DPYDLL="python%s.dll"' % self.py_ver, '/IC:/Python%s/include' % self.py_ver ] for src, obj in zip(sources, objects): if not self.newer(obj, headers + [src]): continue cmd = [msvc.cc] + cflags + dflags + ['/Fo' + obj, '/Tc' + src] self.run_builder(cmd, show_output=True) dll = self.j(self.obj_dir, 'calibre-launcher.dll') ver = '.'.join(__version__.split('.')[:2]) if self.newer(dll, objects): cmd = [msvc.linker, '/DLL', '/VERSION:'+ver, '/OUT:'+dll, '/nologo', '/MACHINE:'+machine] + dlflags + objects + \ [self.embed_resources(dll), '/LIBPATH:C:/Python%s/libs'%self.py_ver, 'python%s.lib'%self.py_ver, '/delayload:python%s.dll'%self.py_ver] self.info('Linking calibre-launcher.dll') self.run_builder(cmd, show_output=True) src = self.j(base, 'main.c') shutil.copy2(dll, self.base) for typ in ( 'console', 'gui', ): self.info('Processing %s launchers' % typ) subsys = 'WINDOWS' if typ == 'gui' else 'CONSOLE' for mod, bname, func in zip(modules[typ], basenames[typ], functions[typ]): xflags = list(cflags) if typ == 'gui': xflags += ['/DGUI_APP='] xflags += [ '/DMODULE="%s"' % mod, '/DBASENAME="%s"' % bname, '/DFUNCTION="%s"' % func ] dest = self.j(self.obj_dir, bname + '.obj') if self.newer(dest, [src] + headers): self.info('Compiling', bname) cmd = [msvc.cc ] + xflags + dflags + ['/Tc' + src, '/Fo' + dest] self.run_builder(cmd) exe = self.j(self.base, bname + '.exe') lib = dll.replace('.dll', '.lib') if self.newer(exe, [dest, lib, self.rc_template, __file__]): self.info('Linking', bname) cmd = [msvc.linker] + [ '/MACHINE:' + machine, '/LIBPATH:' + self.obj_dir, '/SUBSYSTEM:' + subsys, '/LIBPATH:C:/Python%s/libs' % self.py_ver, '/RELEASE', '/OUT:' + exe ] + dlflags + [self.embed_resources(exe), dest, lib] self.run_builder(cmd)
from setuptools import find_packages from setup import __version__, __description__, __license__, __author__, __email__ from promebuilder import gen_metadata, setup from promebuilder.utils import VERSIONFILE with open(VERSIONFILE, 'w') as verfile: vv = __version__.split('.') while len(vv) < 3: vv.append('0') verfile.write('.'.join(vv)) METADATA = gen_metadata( name='django-mongoengine', description=__description__, url='https://github.com/prometeia/django-mongoengine', email="*****@*****.**", keywords="mongodb mongoengine django odm", package_data={'django-mongoengine': ['*.*']} ) METADATA.update(dict( license=__license__, author=__author__, author_email=__email__, packages=find_packages(exclude=('doc', 'docs')), include_package_data=True, test_suite='nose.collector', )) # Non importabile senza django configurato if METADATA.get('conda_import_tests'): METADATA['conda_import_tests'] = False