def build(module_params): check_dependencies(False, ['version'], module_params) version = module_params['version'] major_version = re.match('^[0-9]+', version).group(0) mm_version = str(re.match('^[0-9]+\.[0-9]+', version).group(0)).replace('.', '') fs.remove(build_directory) if is_windows(): print('This may take a while') net.download_file(qt_x64_path.format(major_version, mm_version, version), qt_archive) archives.extract_7_zip(qt_archive, build_directory) net.download_file(qt_x64_path.format(major_version, mm_version, version), qt_archive) archives.extract_7_zip(qt_archive, build_directory) net.download_file('http://download.qt.io/official_releases/vsaddin/qt-vs-addin-1.2.4-opensource.exe', qt_vs_addin_path) print('Running Qt Visual Studio Addin installer') if os.path.exists(qt_vs_addin_path): subprocess.call([qt_vs_addin_path], shell=True) else: raise Exception('Cannot find Qt VS Addin installer') sys.exit(80) fs.remove(qt_archive) fs.remove(qt_vs_addin_path)
def build(module_params): check_dependencies(False, ['version'], module_params) version = module_params['version'] fs.remove(build_directory) net.download_file( boost_url.format(version, str(version).replace('.', '_')), boost_archive) archives.extract_7_zip(boost_archive, origin_dir) fs.rename(os.path.join(origin_dir, 'boost_*'), build_directory, False) set_system_variable('BOOST_ROOT', build_directory) set_system_variable('BOOST_HOME', build_directory) TemporaryDir.enter(build_directory) bootstrap_exec = 'bootstrap' b2_exec = 'b2' logs_dir = os.path.join(os.getcwd(), s_config.log_folder) require_full_path(logs_dir) with open(os.path.join(logs_dir, 'build_boost.log'), 'a+') as log_file: subprocess.call([bootstrap_exec], stdout=log_file, stderr=log_file, shell=True) subprocess.call([b2_exec], stdout=log_file, stderr=log_file, shell=True) TemporaryDir.leave() fs.remove(boost_archive) fs.clear( build_directory, cleanup_extensions['obj_files'], )
def build(module_params): check_dependencies(False, ['version'], module_params) fs.remove(origin_dir) vcs.git_clone('https://code.google.com/p/ozz-animation.git', origin_dir, True) cmake.run_cmake(origin_dir, 'x86', 'x86') vcxproj_to_change_x86 = ('x86/' + s for s in vcxproj_pathes) if is_windows(): vcxproj_change_mult(vcxproj_to_change_x86) assembly.build_vcxproj( os.path.join(origin_dir, 'x86', 'ALL_BUILD.vcxproj'), lib_directory) cmake.run_cmake(origin_dir, 'x64', 'x64') vcxproj_to_change_x64 = ('x64/' + s for s in vcxproj_pathes) if is_windows(): vcxproj_change_mult(vcxproj_to_change_x64) assembly.build_vcxproj( os.path.join(origin_dir, 'x64', 'ALL_BUILD.vcxproj'), lib_directory) # TODO: copy fs.rename(os.path.join(origin_dir, 'include'), headers_dir, True) fs.clear(headers_dir, False, ['.h']) fs.clear(origin_dir, cleanup_extensions['c++'])
def build(module_params): check_dependencies(False, ['version'], module_params) fs.remove(origin_dir) vcs.git_clone('https://github.com/gabime/spdlog.git', origin_dir, True) vcs.git_checkout(origin_dir, module_params['version']) fs.rename(os.path.join(origin_dir, 'include'), headers_dir, True) fs.remove(origin_dir)
def build(module_params): check_dependencies(False, ['version'], module_params) version = module_params['version'] # fs.remove(origin_dir) # net.download_file(boost_url.format(version, str(version).replace('.', '_')), boost_archive) # archives.extract_7_zip(boost_archive, os.getcwd()) # fs.rename(os.path.join('boost_*'), origin_dir, True) set_system_variable('BOOST_ROOT', origin_dir) set_system_variable('BOOST_HOME', origin_dir) bootstrap_exec = 'bootstrap' b2_exec = 'b2' logs_dir = os.path.join(os.getcwd(), s_config.log_folder) require_full_path(logs_dir) with open(os.path.join(logs_dir, 'build_boost.log'), 'a+') as log_file: TemporaryDir.enter(origin_dir) subprocess.call([bootstrap_exec], stdout=log_file, stderr=log_file, shell=True) # x86 subprocess.call([b2_exec, '--libdir={}'.format(lib_directory), '--includedir={}'.format(headers_dir), '--address-model=32', '--stagedir={}'.format(lib_directory_x86), '--build-type=complete', '--link=static'], stdout=log_file, stderr=log_file, shell=True) subprocess.call([b2_exec, '--libdir={}'.format(lib_directory), '--includedir={}'.format(headers_dir), '--address-model=64', '--stagedir={}'.format(lib_directory_x64), '--build-type=complete', '--link=static'], stdout=log_file, stderr=log_file, shell=True) TemporaryDir.leave()
def build(module_params): check_dependencies(False, ['version'], module_params) version = module_params['version'] major_version = re.match('^[0-9]+', version).group(0) mm_version = str(re.match('^[0-9]+\.[0-9]+', version).group(0)).replace('.', '') fs.remove(build_directory) if is_windows(): print('This may take a while') net.download_file( qt_x64_path.format(major_version, mm_version, version), qt_archive) archives.extract_7_zip(qt_archive, build_directory) net.download_file( qt_x64_path.format(major_version, mm_version, version), qt_archive) archives.extract_7_zip(qt_archive, build_directory) net.download_file( 'http://download.qt.io/official_releases/vsaddin/qt-vs-addin-1.2.4-opensource.exe', qt_vs_addin_path) print('Running Qt Visual Studio Addin installer') if os.path.exists(qt_vs_addin_path): subprocess.call([qt_vs_addin_path], shell=True) else: raise Exception('Cannot find Qt VS Addin installer') sys.exit(80) fs.remove(qt_archive) fs.remove(qt_vs_addin_path)
def build(module_params): check_dependencies(False, ['version'], module_params) fs.remove(origin_dir) vcs.git_clone('https://github.com/easylogging/easyloggingpp.git', origin_dir) vcs.git_checkout(origin_dir, module_params['version']) fs.rename(os.path.join(origin_dir, 'src'), headers_dir, True) fs.remove(origin_dir)
def build(module_params): check_dependencies(False, ['version'], module_params) fs.remove(origin_dir) freeimage_url = 'http://downloads.sourceforge.net/freeimage/FreeImage{version}.zip'.format( version=module_params['version']) net.download_file(freeimage_url, freeimage_path) archives.extract_zip(freeimage_path) fs.rename('FreeImage', origin_dir) fs.remove(freeimage_path) vcxproj_to_change = ('FreeImage.2013.vcxproj', 'Source/FreeImageLib/FreeImageLib.2013.vcxproj', 'Source/LibJPEG/LibJPEG.2013.vcxproj', 'Source/LibJXR/LibJXR.2013.vcxproj', 'Source/LibOpenJPEG/LibOpenJPEG.2013.vcxproj', 'Source/LibPNG/LibPNG.2013.vcxproj', 'Source/LibRawLite/LibRawLite.2013.vcxproj', 'Source/LibTIFF4/LibTIFF4.2013.vcxproj', 'Source/LibWebP/LibWebP.2013.vcxproj', 'Source/OpenEXR/OpenEXR.2013.vcxproj', 'Source/ZLib/ZLib.2013.vcxproj') print('Be patient. Freeimage compiling for a long time.') if is_windows(): for vcxproj_file in vcxproj_to_change: vcxproj_file = os.path.join(origin_dir, vcxproj_file) assembly.set_vcxproj_platform_toolset(vcxproj_file, config.visual_studio_toolset) assembly.set_vcxproj_runtime_library( vcxproj_file, config.visual_studio_runtime_library) assembly.build_vcxproj( os.path.join(origin_dir, 'FreeImage.2013.vcxproj'), lib_directory) fs.rename(os.path.join(origin_dir, 'Source'), headers_dir, True) fs.clear(origin_dir, cleanup_extensions['c++'])
def build(module_params): check_dependencies(False, ['version'], module_params) fs.remove(origin_dir) freeimage_url = 'http://downloads.sourceforge.net/freeimage/FreeImage{version}.zip'.format( version=module_params['version']) net.download_file(freeimage_url, freeimage_path) archives.extract_zip(freeimage_path) fs.rename('FreeImage', origin_dir) fs.remove(freeimage_path) vcxproj_to_change = ('FreeImage.2013.vcxproj', 'Source/FreeImageLib/FreeImageLib.2013.vcxproj', 'Source/LibJPEG/LibJPEG.2013.vcxproj', 'Source/LibJXR/LibJXR.2013.vcxproj', 'Source/LibOpenJPEG/LibOpenJPEG.2013.vcxproj', 'Source/LibPNG/LibPNG.2013.vcxproj', 'Source/LibRawLite/LibRawLite.2013.vcxproj', 'Source/LibTIFF4/LibTIFF4.2013.vcxproj', 'Source/LibWebP/LibWebP.2013.vcxproj', 'Source/OpenEXR/OpenEXR.2013.vcxproj', 'Source/ZLib/ZLib.2013.vcxproj' ) print('Be patient. Freeimage compiling for a long time.') if is_windows(): for vcxproj_file in vcxproj_to_change: vcxproj_file = os.path.join(origin_dir, vcxproj_file) assembly.set_vcxproj_platform_toolset(vcxproj_file, config.visual_studio_toolset) assembly.set_vcxproj_runtime_library(vcxproj_file, config.visual_studio_runtime_library) assembly.build_vcxproj(os.path.join(origin_dir, 'FreeImage.2013.vcxproj'), lib_directory) fs.rename(os.path.join(origin_dir, 'Source'), headers_dir, True) fs.clear(origin_dir, cleanup_extensions['c++'])
def build(module_params): if is_linux(): check_dependencies(['gksudo']) assembly.install_distro_dependencies(['git']) elif is_windows(): net.download_file("https://dl.dropboxusercontent.com/u/92011034/git.zip", git_archive) archives.extract_7_zip(git_archive, git_path) fs.remove(git_archive)
def build(module_params): check_dependencies(False, ['version'], module_params) url_to_eigen = 'http://bitbucket.org/eigen/eigen/get/{version}.zip'.format(version=module_params['version']) net.download_file(url_to_eigen, archive_path) archives.extract_zip(archive_path) fs.rename(os.path.join('eigen-*', 'Eigen'), headers_dir, True) fs.remove('eigen-*') fs.remove(archive_path) fs.clear(headers_dir)
def build(module_params): check_dependencies(False, ['version'], module_params) url_to_eigen = 'http://bitbucket.org/eigen/eigen/get/{version}.zip'.format( version=module_params['version']) net.download_file(url_to_eigen, archive_path) archives.extract_zip(archive_path) fs.rename(os.path.join('eigen-*', 'Eigen'), headers_dir, True) fs.remove('eigen-*') fs.remove(archive_path) fs.clear(headers_dir)
def build(module_params): check_dependencies(False, ['version'], module_params) fs.remove(origin_dir) glm_url = "http://sourceforge.net/projects/ogl-math/files/glm-{0}/glm-{0}.zip/download".format( module_params['version']) net.download_file(glm_url, glm_path) archives.extract_7_zip(glm_path, origin_dir) fs.rename(os.path.join(origin_dir, 'glm', 'glm'), headers_dir, True) fs.remove(glm_path) fs.remove(origin_dir)
def build(module_params): check_dependencies(False, ['version'], module_params) fs.remove(origin_dir) vcs.git_clone('https://github.com/cppformat/cppformat.git', origin_dir, True) vcs.git_checkout(origin_dir, module_params['version']) cmake.run_cmake(origin_dir, 'x86', os.path.join(origin_dir, 'cppformat_x86')) build_lib('x86') cmake.run_cmake(origin_dir, 'x64', os.path.join(origin_dir, 'cppformat_x64')) build_lib('x64') fs.move_files_to_dir_by_mask(os.path.join(origin_dir, '*.h'), headers_dir, True)
def build(module_params): fs.remove(origin_dir) check_dependencies(False, ['version'], module_params) vcs.git_clone('https://github.com/glfw/glfw.git', origin_dir) vcs.git_checkout(origin_dir, module_params['version']) build_arch('x86') build_arch('x64') fs.rename(os.path.join(origin_dir, 'include'), headers_dir, True) fs.clear(origin_dir, cleanup_extensions['c++'])
def build(module_params): fs.remove(origin_dir) check_dependencies(False, ['version'], module_params) vcs.git_clone('https://github.com/glfw/glfw.git', origin_dir) vcs.git_checkout(origin_dir, module_params['version']) build_arch('x86') build_arch('x64') fs.rename(os.path.join(origin_dir, 'include'), headers_dir, True) fs.clear(origin_dir, cleanup_extensions['c++'])
def build(module_params): if is_linux(): check_dependencies(['gksudo']) assembly.install_distro_dependencies(['cmake']) elif is_windows(): check_dependencies(False, ['version']) version = module_params['version'] cmake_url = "http://www.cmake.org/files/v{0}/" \ "cmake-{1}-win32-x86.zip".format(re.search('\.[0-9]+$', version).group(1), version) net.download_file(cmake_url, cmake_path) archives.extract_7_zip(cmake_path, s_config.tools_directory + os.path.sep) fs.remove(cmake_path) fs.rename(os.path.join(s_config.tools_directory, 'cmake-*'), os.path.join(s_config.tools_directory, 'cmake'))
def build(module_params): if is_linux(): check_dependencies(['gksudo']) assembly.install_distro_dependencies(['cmake']) elif is_windows(): check_dependencies(False, ['version']) small_version = '.'.join(str(module_params['version']).split('.')[0:2]) cmake_url = "http://www.cmake.org/files/v{0}/cmake-{1}-win32-x86.zip".format(small_version, module_params['version']) net.download_file(cmake_url, cmake_path) archives.extract_7_zip(cmake_path, s_config.tools_directory + os.path.sep) fs.remove(cmake_path) fs.rename(os.path.join(s_config.tools_directory, 'cmake-*'), os.path.join(s_config.tools_directory, 'cmake'), True)
def build(module_params): if is_linux(): check_dependencies(['gksudo']) assembly.install_distro_dependencies(['cmake']) elif is_windows(): check_dependencies(False, ['version']) version = module_params['version'] cmake_url = "http://www.cmake.org/files/v{0}/" \ "cmake-{1}-win32-x86.zip".format(re.search('\.[0-9]+$', version).group(1), version) net.download_file(cmake_url, cmake_path) archives.extract_7_zip(cmake_path, s_config.tools_directory + os.path.sep) fs.remove(cmake_path) fs.rename(os.path.join(s_config.tools_directory, 'cmake-*'), os.path.join(s_config.tools_directory, 'cmake'))
def build(module_params): sys.path.append(os.path.abspath(origin_dir)) logs_dir = os.path.abspath(s_config.log_folder) fs.remove(logs_dir) require_full_path(logs_dir) check_dependencies(False, ['version'], module_params) version = module_params['version'] fs.remove(origin_dir) fetch_v8(version, logs_dir) print('Building v8 x64') make_v8('x64', logs_dir) print('Building v8 x86') make_v8('ia32', logs_dir) fs.rename(os.path.join(origin_dir, 'v8', 'include'), headers_dir, True) fs.clear(origin_dir, cleanup_extensions['c++'], )
def build(module_params): check_dependencies(False, ['version'], module_params) fs.remove(origin_dir) freetype_url = "http://download.savannah.gnu.org/releases/freetype/freetype-{}.tar.gz".format( module_params['version']) net.download_file(freetype_url, path_tar_gz) archives.extract_7_zip(path_tar_gz, download_dir) archives.extract_7_zip(path_tar) fs.rename('freetype-*', origin_dir, True) fs.remove(download_dir) if is_windows(): assembly.set_vcxproj_platform_toolset(vcxproj_file, config.visual_studio_toolset) assembly.set_vcxproj_runtime_library(vcxproj_file, config.visual_studio_runtime_library) assembly.build_vcxproj(vcxproj_file, lib_directory) fs.rename(os.path.join(origin_dir, 'include'), headers_dir, True) fs.clear(origin_dir, cleanup_extensions['c++'])
def build(module_params): sys.path.append(os.path.abspath(origin_dir)) logs_dir = os.path.abspath(s_config.log_folder) fs.remove(logs_dir) require_full_path(logs_dir) check_dependencies(False, ['version'], module_params) version = module_params['version'] fs.remove(origin_dir) fetch_v8(version, logs_dir) print('Building v8 x64') make_v8('x64', logs_dir) print('Building v8 x86') make_v8('ia32', logs_dir) fs.rename(os.path.join(origin_dir, 'v8', 'include'), headers_dir, True) fs.clear( origin_dir, cleanup_extensions['c++'], )
def build(module_params): check_dependencies(False, ['version'], module_params) fs.remove(origin_dir) glew_url = 'https://sourceforge.net/projects/glew/files/glew/{0}/glew-{0}.zip/download'.format( module_params['version']) net.download_file(glew_url, archive_path) archives.extract_zip(archive_path) fs.remove(archive_path) fs.rename('glew-*', origin_dir, True) if is_windows(): assembly.set_vcxproj_platform_toolset(main_vcxproj, config.visual_studio_toolset) assembly.set_vcxproj_runtime_library(main_vcxproj, config.visual_studio_runtime_library) assembly.build_vcxproj(main_vcxproj, lib_directory) fs.rename(os.path.join(origin_dir, 'include'), headers_dir, True) fs.clear(origin_dir, cleanup_extensions['c++'])
def build(module_params): check_dependencies(False, ['version'], module_params) fs.remove(origin_dir) sqlite_url = 'http://www.sqlite.org/2015/sqlite-amalgamation-{0}.zip'.format(module_params['version']) net.download_file(sqlite_url, archive_path) archives.extract_zip(archive_path) fs.remove(archive_path) fs.rename('sqlite-amalgamation*', origin_dir, True) create_and_run_cmake_file(origin_dir, 'x86') create_and_run_cmake_file(origin_dir, 'x64') if is_windows(): assembly.build_vcxproj(os.path.join(origin_dir, 'sqlite_x86', 'sqlite_x86.vcxproj'), lib_directory, ('Debug', 'Release')) assembly.build_vcxproj(os.path.join(origin_dir, 'sqlite_x64', 'sqlite_x64.vcxproj'), lib_directory, ('Debug', 'Release')) fs.move_files_to_dir_by_mask(os.path.join(origin_dir, '*.h'), headers_dir, True) fs.clear(origin_dir, cleanup_extensions['c++'])
def build(module_params): check_dependencies(False, ['version'], module_params) fs.remove(origin_dir) glew_url = 'https://sourceforge.net/projects/glew/files/glew/{0}/glew-{0}.zip/download'.format( module_params['version']) net.download_file(glew_url, archive_path) archives.extract_zip(archive_path) fs.remove(archive_path) fs.rename('glew-*', origin_dir, True) if is_windows(): assembly.set_vcxproj_platform_toolset(main_vcxproj, config.visual_studio_toolset) assembly.set_vcxproj_runtime_library( main_vcxproj, config.visual_studio_runtime_library) assembly.build_vcxproj(main_vcxproj, lib_directory) fs.rename(os.path.join(origin_dir, 'include'), headers_dir, True) fs.clear(origin_dir, cleanup_extensions['c++'])
def build(module_params): check_dependencies(False, ['version'], module_params) fs.remove(origin_dir) vcs.git_clone('https://code.google.com/p/ozz-animation.git', origin_dir, True) cmake.run_cmake(origin_dir, 'x86', 'x86') vcxproj_to_change_x86 = ('x86/' + s for s in vcxproj_pathes) if is_windows(): vcxproj_change_mult(vcxproj_to_change_x86) assembly.build_vcxproj(os.path.join(origin_dir, 'x86', 'ALL_BUILD.vcxproj'), lib_directory) cmake.run_cmake(origin_dir, 'x64', 'x64') vcxproj_to_change_x64 = ('x64/' + s for s in vcxproj_pathes) if is_windows(): vcxproj_change_mult(vcxproj_to_change_x64) assembly.build_vcxproj(os.path.join(origin_dir, 'x64', 'ALL_BUILD.vcxproj'), lib_directory) # TODO: copy fs.rename(os.path.join(origin_dir, 'include'), headers_dir, True) fs.clear(headers_dir, False, ['.h']) fs.clear(origin_dir, cleanup_extensions['c++'])
def build(module_params): check_dependencies((), ['version'], module_params) version = module_params['version'] if is_windows(): url_to_installer = "http://www.fmod.org/download/fmodstudio/api/Win/fmodstudioapi{}win-installer.exe".format( version) net.download_file(url_to_installer, fmod_path) archives.extract_7_zip(fmod_path, origin_dir) elif is_linux(): url_to_installer = "http://www.fmod.org/download/fmodstudio/api/Linux/fmodstudioapi{}linux.tar.gz".format( version) net.download_file(url_to_installer, fmod_path) archives.extract_tar(fmod_path) fs.remove(origin_dir) fs.rename('fmodstudioapi*', origin_dir, True) fs.remove(build_dir) fs.remove(os.path.join(origin_dir, 'api', '*', 'examples')) fs.rename(os.path.join(origin_dir, 'api'), build_dir, True) fs.remove(fmod_path) fs.remove(origin_dir)
def build(module_params): # TODO: Looks like windows is working, problems with linux version (extract .so from binary) check_dependencies(False, ['version'], module_params) fs.remove(origin_dir) if is_windows(): net.download_file( 'http://images.autodesk.com/adsk/files/fbx{version}_fbxsdk_vs2013_win.exe' .format(version=module_params['version']), exe_path) archives.extract_7_zip(exe_path, origin_dir) elif is_linux(): net.download_file( 'http://images.autodesk.com/adsk/files/fbx{version}_fbxsdk_linux.tar.gz' .format(version=module_params['version']), 'origin.tar.gz') archives.extract_tar('origin.tar.gz', origin_dir) fs.rename(os.path.join(origin_dir, 'include'), headers_dir, True) fs.rename(os.path.join(origin_dir, 'lib', 'vs2013'), lib_directory, True) fs.remove(origin_dir) fs.remove(exe_path)
def build(module_params): check_dependencies(False, ['version'], module_params) fs.remove(origin_dir) sqlite_url = 'http://www.sqlite.org/2015/sqlite-amalgamation-{0}.zip'.format( module_params['version']) net.download_file(sqlite_url, archive_path) archives.extract_zip(archive_path) fs.remove(archive_path) fs.rename('sqlite-amalgamation*', origin_dir, True) create_and_run_cmake_file(origin_dir, 'x86') create_and_run_cmake_file(origin_dir, 'x64') if is_windows(): assembly.build_vcxproj( os.path.join(origin_dir, 'sqlite_x86', 'sqlite_x86.vcxproj'), lib_directory, ('Debug', 'Release')) assembly.build_vcxproj( os.path.join(origin_dir, 'sqlite_x64', 'sqlite_x64.vcxproj'), lib_directory, ('Debug', 'Release')) fs.move_files_to_dir_by_mask(os.path.join(origin_dir, '*.h'), headers_dir, True) fs.clear(origin_dir, cleanup_extensions['c++'])
def build(module_params): check_dependencies(False, ['version'], module_params) version = module_params['version'] fs.remove(build_directory) net.download_file(boost_url.format(version, str(version).replace('.', '_')), boost_archive) archives.extract_7_zip(boost_archive, origin_dir) fs.rename(os.path.join(origin_dir, 'boost_*'), build_directory, False) set_system_variable('BOOST_ROOT', build_directory) set_system_variable('BOOST_HOME', build_directory) TemporaryDir.enter(build_directory) bootstrap_exec = 'bootstrap' b2_exec = 'b2' logs_dir = os.path.join(os.getcwd(), s_config.log_folder) require_full_path(logs_dir) with open(os.path.join(logs_dir, 'build_boost.log'), 'a+') as log_file: subprocess.call([bootstrap_exec], stdout=log_file, stderr=log_file, shell=True) subprocess.call([b2_exec], stdout=log_file, stderr=log_file, shell=True) TemporaryDir.leave() fs.remove(boost_archive) fs.clear(build_directory, cleanup_extensions['obj_files'],)
def build(module_params): if is_linux(): check_dependencies(['gksudo']) assembly.install_distro_dependencies(['p7zip-full'])