B u `F@srddlZddlZddlZddlmZddlmZmZddlm Z ddZ ddZ Gd d d e Z ed krne dS) N)PYOMO_CONFIG_DIR) this_file_dirfind_dir)FileDownloaderc Csddlm}tjtdtg}dtjkr6tjd}ntdd|d}|rXt d|fnt d t}tj|d g}tj|dd tj|dd d g}|d|dg|ggd}dg|gd}|S)Nr) ExtensionsrcZ MCPP_ROOTmcppT)cwdpathlistzFound MC++ at %sz._BuildWithoutPlatformInfocs0t||d}d|d|dg}|S)N.r)superget_ext_filenamesplitr)selfZext_namefilename)_BuildWithoutPlatformInfo __class__rrr"Ss  z>build_mcpp.._BuildWithoutPlatformInfo.get_ext_filename)__name__ __module__ __qualname__r" __classcell__r)r&)r'rr&Ksr&z **** Building MCPP library ****rcmdclasslib install_libz tmpdir = %szInstalled mcppInterface to %s)distutils.coreZdistutils.command.build_extrobjectrrcore Distributionrrrrget_command_obj install_dirabspathcurdirtempfilemkdtempchdir run_commandshutilrmtree) distutilsrrdistr4basedirZtmpdirr)r&r build_mcppGs$       r@c@seZdZddZddZdS) MCPPBuildercCstS)N)r@)r$parallelrrr__call__kszMCPPBuilder.__call__cCstddkS)NrZwindows)rZ get_sysinfo)r$rrrskipnszMCPPBuilder.skipN)r(r)r*rCrDrrrrrAjsrA__main__)rr;r7Zpyomo.common.configrZpyomo.common.fileutilsrrZpyomo.common.downloadrrr@r0rAr(rrrr s  4#