def _gen_shell_posix_impl(self, conf, obj_conf, static=False, shared=False): def _gen_library(lib): if lib.endswith('.a') or lib.endswith('.so'): return lib else: return lib.replace('lib', '-l') all_sources = eutils.get_sources_list(MakeEnv().get_proj_path(), exts=conf['extensions'], fullpath=True) mk_dict = dict( target=conf['target'], cflags=self._gen_options('cflags', conf.get('compile_options', [])), inc_dir=self._gen_options('inc_dir', conf.get('inc_dir', []), posix=True), objs=self._gen_options('objs', all_sources, gen=self._gen_objname, shave_last=True, posix=True) ) if not static: mk_dict['ldflags'] = self._gen_options('ldflags', conf.get('ldflags', []), posix=True) mk_dict['link_dir'] = self._gen_options('link_dir', conf.get('link_dir', []), posix=True) mk_dict['link_libs'] = self._gen_options('link_libs', conf.get('link_libs', []), gen=_gen_library, posix=True) objs = [] for source in all_sources: obj_name = self._gen_options('objs', [source], gen=self._gen_objname, shave_last=True, posix=True) objs.append(obj_conf.format(mk_obj=obj_name, mk_src=source)) mk_dict['emake_objs'] = ''.join(objs) return mk_dict
def _gen_shell_posix_impl(self, conf, obj_conf, static=False, shared=False): def _gen_library(lib): if lib.endswith('.a') or lib.endswith('.so'): return lib else: return lib.replace('lib', '-l') all_sources = eutils.get_sources_list(MakeEnv().get_proj_path(), exts=conf['extensions'], fullpath=True) mk_dict = dict(target=conf['target'], cflags=self._gen_options( 'cflags', conf.get('compile_options', [])), inc_dir=self._gen_options('inc_dir', conf.get('inc_dir', []), posix=True), objs=self._gen_options('objs', all_sources, gen=self._gen_objname, shave_last=True, posix=True)) if not static: mk_dict['ldflags'] = self._gen_options('ldflags', conf.get('ldflags', []), posix=True) mk_dict['link_dir'] = self._gen_options('link_dir', conf.get('link_dir', []), posix=True) mk_dict['link_libs'] = self._gen_options('link_libs', conf.get('link_libs', []), gen=_gen_library, posix=True) objs = [] for source in all_sources: obj_name = self._gen_options('objs', [source], gen=self._gen_objname, shave_last=True, posix=True) objs.append(obj_conf.format(mk_obj=obj_name, mk_src=source)) mk_dict['emake_objs'] = ''.join(objs) return mk_dict
def _gen_shell_windows(self, conf, obj_conf, static=False, shared=False): all_sources = eutils.get_sources_list(MakeEnv().get_proj_path(), exts=conf['extensions'], fullpath=True) mk_dict = dict( target=conf['target'], cflags=self._gen_options('cflags', conf.get('compile_options', [])), preprocessor=self._gen_options('preprocessor', conf.get('precompile_options', [])), inc_dir=self._gen_options('inc_dir', conf.get('inc_dir', [])), objs=self._gen_options('objs', all_sources, gen=self._gen_objname, shave_last=True)) if not static: mk_dict['ldflags'] = self._gen_options('ldflags', conf.get('ldflags', [])) mk_dict['link_dir'] = self._gen_options('link_dir', conf.get('link_dir', [])) mk_dict['link_libs'] = self._gen_options('link_libs', conf.get('link_libs', [])) objs = [] for source in all_sources: obj_name = self._gen_options('objs', [source], gen=self._gen_objname, shave_last=True) if os.path.splitext(source)[1][1:] == 'c': clang = '-EHs' else: clang = '-EHsc' objs.append( obj_conf.format(mk_obj=obj_name, mk_src=source, clang=clang)) mk_dict['emake_objs'] = ''.join(objs) return mk_dict
def _gen_shell_windows(self, conf, obj_conf, static=False, shared=False): all_sources = eutils.get_sources_list(MakeEnv().get_proj_path(), exts=conf['extensions'], fullpath=True) mk_dict = dict( target=conf['target'], cflags=self._gen_options('cflags', conf.get('compile_options', [])), preprocessor=self._gen_options('preprocessor', conf.get('precompile_options', [])), inc_dir=self._gen_options('inc_dir', conf.get('inc_dir', [])), objs=self._gen_options('objs', all_sources, gen=self._gen_objname, shave_last=True) ) if not static: mk_dict['ldflags'] = self._gen_options('ldflags', conf.get('ldflags', [])) mk_dict['link_dir'] = self._gen_options('link_dir', conf.get('link_dir', [])) mk_dict['link_libs'] = self._gen_options('link_libs', conf.get('link_libs', [])) objs = [] for source in all_sources: obj_name = self._gen_options('objs', [source], gen=self._gen_objname, shave_last=True) if os.path.splitext(source)[1][1:] == 'c': clang = '-EHs' else: clang = '-EHsc' objs.append(obj_conf.format(mk_obj=obj_name, mk_src=source, clang=clang)) mk_dict['emake_objs'] = ''.join(objs) return mk_dict