def setDependencies(self): self.buildDependencies['virtual/base'] = 'default' self.buildDependencies['dev-util/perl'] = 'default' if compiler.isMinGW(): self.buildDependencies['dev-util/msys'] = 'default' self.dependencies['win32libs/zlib'] = 'default' elif compiler.isMSVC() and compiler.isX86(): self.buildDependencies['dev-util/nasm'] = 'default'
def unpack(self): destdir = os.path.join(self.sourceDir(), "bin") utils.createDir(self.sourceDir()) utils.createDir(destdir) postfix = "" if self.buildType() == "Debug": postfix = "d" srcdir = None files = [] if compiler.isMinGW(): if self.subinfo.options.features.legacyGCC: if compiler.isMinGW_W32(): srcdir = os.path.join(self.rootdir, "mingw", "bin") elif compiler.isMinGW_W64(): srcdir = os.path.join(self.rootdir, "mingw64", "bin") files = ['libgcc_s_sjlj-1.dll', 'libgomp-1.dll'] else: files = [ 'libgomp-1.dll', 'libstdc++-6.dll', 'libwinpthread-1.dll' ] if compiler.isMinGW_W32(): files.append('libgcc_s_sjlj-1.dll') srcdir = os.path.join(self.rootdir, "mingw", "bin") elif compiler.isMinGW_W64(): files.append('libgcc_s_seh-1.dll') srcdir = os.path.join(self.rootdir, "mingw64", "bin") elif compiler.isMSVC(): if compiler.isX86( ) and os.environ["PROCESSOR_ARCHITECTURE"] == "AMD64": srcdir = os.path.join(os.environ["SystemRoot"], "SysWOW64") else: srcdir = os.path.join(os.environ["SystemRoot"], "System32") if compiler.isMSVC2010(): files = [ "msvcr100%s.dll" % postfix, "msvcp100%s.dll" % postfix ] elif compiler.isMSVC2013(): files = [ "msvcr120%s.dll" % postfix, "msvcp120%s.dll" % postfix ] elif compiler.isMSVC2015(): files = [ "concrt140%s.dll" % postfix, "msvcp140%s.dll" % postfix, "vccorlib140%s.dll" % postfix, "vcruntime140%s.dll" % postfix ] for file in files: utils.copyFile(os.path.join(srcdir, file), os.path.join(destdir, file), False) return True
def unpack( self ): destdir = os.path.join( self.sourceDir(), "bin" ) utils.createDir( self.sourceDir() ) utils.createDir( destdir ) postfix = "" if self.buildType() == "Debug": postfix = "d" srcdir = None files = [] if compiler.isMinGW(): if self.subinfo.options.features.legacyGCC: if compiler.isMinGW_W32(): srcdir = os.path.join( self.rootdir, "mingw", "bin" ) elif compiler.isMinGW_W64(): srcdir = os.path.join( self.rootdir, "mingw64", "bin" ) files = [ 'libgcc_s_sjlj-1.dll', 'libgomp-1.dll' ] else: files = [ 'libgomp-1.dll', 'libstdc++-6.dll', 'libwinpthread-1.dll' ] if compiler.isMinGW_W32(): files.append('libgcc_s_sjlj-1.dll') srcdir = os.path.join( self.rootdir, "mingw", "bin" ) elif compiler.isMinGW_W64(): files.append('libgcc_s_seh-1.dll') srcdir = os.path.join( self.rootdir, "mingw64", "bin" ) elif compiler.isMSVC(): if compiler.isX86() and os.environ["PROCESSOR_ARCHITECTURE"] == "AMD64": srcdir = os.path.join( os.environ["SystemRoot"], "SysWOW64") else: srcdir = os.path.join( os.environ["SystemRoot"], "System32") if compiler.isMSVC2010(): files = [ "msvcr100%s.dll" % postfix, "msvcp100%s.dll" % postfix ] elif compiler.isMSVC2013(): files = [ "msvcr120%s.dll" % postfix, "msvcp120%s.dll" % postfix ] elif compiler.isMSVC2015(): files = [ "concrt140%s.dll" % postfix, "msvcp140%s.dll" % postfix, "vccorlib140%s.dll" % postfix, "vcruntime140%s.dll" % postfix ] for file in files: utils.copyFile( os.path.join( srcdir, file ), os.path.join( destdir, file ), False ) return True
def printEnv( self ): self.env = self.getEnv( ) self.version = int(emergeSettings.get("Version", "EMERGE_SETTINGS_VERSION")) self.addEnvVar( "KDEROOT", EmergeStandardDirs.emergeRoot( ) ) if emergeSettings.getboolean( "Compile", "UseCCache", False ): self.addEnvVar( "CCACHE_DIR", emergeSettings.get( "Paths", "CCACHE_DIR", os.path.join( EmergeStandardDirs.emergeRoot( ), "build", "CCACHE" ) ) ) if self.version < 2: self.addEnvVar( "GIT_SSH", "plink" ) self.addEnvVar( "SVN_SSH", "plink" ) if not "HOME" in self.env.keys(): self.addEnvVar( "HOME", os.getenv( "USERPROFILE" ) ) self.addEnvVar( "PKG_CONFIG_PATH", os.path.join( EmergeStandardDirs.emergeRoot( ), "lib", "pkgconfig" ) ) self.addEnvVar( "QT_PLUGIN_PATH", "%s;%s;%s" % ( os.path.join( EmergeStandardDirs.emergeRoot( ), "plugins" ), os.path.join( EmergeStandardDirs.emergeRoot( ), "lib", "plugins" ), os.path.join( EmergeStandardDirs.emergeRoot( ), "lib", "plugin" )) ) self.addEnvVar( "XDG_DATA_DIRS", os.path.join( EmergeStandardDirs.emergeRoot( ), "share" ) ) if emergeSettings.getboolean("QtSDK", "Enabled", "false"): self.prependPath( "Path", os.path.join( emergeSettings.get("QtSDK", "Path") , emergeSettings.get("QtSDK", "Version"), emergeSettings.get("QtSDK", "Compiler"), "bin")) if compiler.isMinGW( ): if not emergeSettings.getboolean("QtSDK", "Enabled", "false"): if compiler.isX86( ): self.prependPath( "Path", os.path.join( EmergeStandardDirs.emergeRoot( ), "mingw", "bin" ) ) else: self.prependPath( "Path", os.path.join( EmergeStandardDirs.emergeRoot( ), "mingw64", "bin" ) ) else: self.prependPath( "Path", os.path.join( emergeSettings.get("QtSDK", "Path") ,"Tools", emergeSettings.get("QtSDK", "Compiler"), "bin" )) if self.args.mode == "bat": #don't put emerge.bat in path when using powershell self.prependPath( "Path", os.path.join( EmergeStandardDirs.emergeRoot( ), "emerge", "bin" ) ) self.prependPath( "Path", os.path.join( EmergeStandardDirs.emergeRoot( ), "dev-utils", "bin" ) ) #make sure thate emergeroot bin is the first to look for dlls etc self.prependPath( "Path", os.path.join( EmergeStandardDirs.emergeRoot( ), "bin" ) ) # add python site packages to pythonpath self.prependPath( "PythonPath", os.path.join( EmergeStandardDirs.emergeRoot( ), "lib", "site-packages")) for var, value in emergeSettings.getSection( "Environment" ): #set and overide existing values self.addEnvVar( var, value ) for key, val in self.env.items( ): print( "%s=%s" % (key, val) )
def printEnv(self): self.env = self.getEnv() self.version = int( emergeSettings.get("Version", "EMERGE_SETTINGS_VERSION")) self.addEnvVar("KDEROOT", EmergeStandardDirs.emergeRoot()) if emergeSettings.getboolean("Compile", "UseCCache", False): self.addEnvVar( "CCACHE_DIR", emergeSettings.get( "Paths", "CCACHE_DIR", os.path.join(EmergeStandardDirs.emergeRoot(), "build", "CCACHE"))) if self.version < 2: self.addEnvVar("GIT_SSH", "plink") self.addEnvVar("SVN_SSH", "plink") if not "HOME" in self.env.keys(): self.addEnvVar("HOME", os.getenv("USERPROFILE")) self.addEnvVar( "PKG_CONFIG_PATH", os.path.join(EmergeStandardDirs.emergeRoot(), "lib", "pkgconfig")) self.addEnvVar( "QT_PLUGIN_PATH", "%s;%s;%s" % (os.path.join(EmergeStandardDirs.emergeRoot(), "plugins"), os.path.join(EmergeStandardDirs.emergeRoot(), "lib", "plugins"), os.path.join(EmergeStandardDirs.emergeRoot(), "lib", "plugin"))) self.addEnvVar("XDG_DATA_DIRS", os.path.join(EmergeStandardDirs.emergeRoot(), "share")) if emergeSettings.getboolean("QtSDK", "Enabled", "false"): self.prependPath( "Path", os.path.join(emergeSettings.get("QtSDK", "Path"), emergeSettings.get("QtSDK", "Version"), emergeSettings.get("QtSDK", "Compiler"), "bin")) if compiler.isMinGW(): if not emergeSettings.getboolean("QtSDK", "Enabled", "false"): if compiler.isX86(): self.prependPath( "Path", os.path.join(EmergeStandardDirs.emergeRoot(), "mingw", "bin")) else: self.prependPath( "Path", os.path.join(EmergeStandardDirs.emergeRoot(), "mingw64", "bin")) else: self.prependPath( "Path", os.path.join(emergeSettings.get("QtSDK", "Path"), "Tools", emergeSettings.get("QtSDK", "Compiler"), "bin")) if self.args.mode == "bat": #don't put emerge.bat in path when using powershell self.prependPath( "Path", os.path.join(EmergeStandardDirs.emergeRoot(), "emerge", "bin")) self.prependPath( "Path", os.path.join(EmergeStandardDirs.emergeRoot(), "dev-utils", "bin")) #make sure thate emergeroot bin is the first to look for dlls etc self.prependPath("Path", os.path.join(EmergeStandardDirs.emergeRoot(), "bin")) # add python site packages to pythonpath self.prependPath( "PythonPath", os.path.join(EmergeStandardDirs.emergeRoot(), "lib", "site-packages")) for var, value in emergeSettings.getSection( "Environment"): #set and overide existing values self.addEnvVar(var, value) for key, val in self.env.items(): print("%s=%s" % (key, val))