def build_ffmpeg(self): ffmpeg_platform_args = [ '--disable-doc', '--pkg-config-flags=--static', '--disable-programs', '--enable-openssl', '--disable-opencl', '--disable-encoders', '--disable-lzma', '--disable-iconv', '--disable-shared', '--enable-static', '--disable-debug', '--disable-jni', '--enable-postproc', '--enable-filter=yadif', '--enable-avfilter', '--enable-avcodec', '--enable-avdevice', '--enable-avformat', '--enable-swscale', '--enable-swresample', '--extra-version=static' ] # '--extra-cflags=--static' platform = self.platform() platform_name = platform.name() if platform_name == 'linux': ffmpeg_platform_args.extend(['--disable-libxcb']) elif platform_name == 'windows': ffmpeg_platform_args = ffmpeg_platform_args elif platform_name == 'macosx': ffmpeg_platform_args.extend( ['--cc=clang', '--cxx=clang++', '--disable-libxcb']) elif platform_name == 'android': ffmpeg_platform_args = ffmpeg_platform_args ffmpeg_platform_args.extend(['--cc=%s' % os.environ['CC']]) compiler_flags = self.device_.ffmpeg_compile_flags() compiler_flags.extend(ffmpeg_platform_args) self._clone_and_build_via_configure( build_utils.generate_fastogt_github_path('ffmpeg'), compiler_flags, use_platform_flags=False)
def build_rocksdb(self): self._clone_and_build_via_cmake( build_utils.generate_fastogt_github_path('rocksdb'), [ '-DFAIL_ON_WARNINGS=OFF', '-DPORTABLE=ON', '-DWITH_TESTS=OFF', '-DWITH_SNAPPY=ON', '-DWITH_ZLIB=ON', '-DWITH_LZ4=ON', '-DROCKSDB_INSTALL_ON_WINDOWS=ON', '-DWITH_TOOLS=OFF', '-DWITH_GFLAGS=OFF', '-DROCKSDB_BUILD_SHARED=OFF' ])
def build_libssh2(self): self._clone_and_build_via_cmake( build_utils.generate_fastogt_github_path('libssh2'), [ '-DBUILD_SHARED_LIBS=OFF', '-DCRYPTO_BACKEND=OpenSSL', '-DENABLE_ZLIB_COMPRESSION=ON', '-DBUILD_EXAMPLES=OFF', '-DBUILD_TESTING=OFF', '-DOPENSSL_USE_STATIC_LIBS=ON', '-DZLIB_USE_STATIC=ON', '-DOPENSSL_ROOT_DIR={0}'.format( self.prefix_path_) ])
def build_gst_plugins_bad(self, version, build_mfx: bool, build_vaapi: bool): compiler_flags = ['--buildtype=release', '-Dopenexr=disabled'] url = build_utils.generate_fastogt_github_path('gst-plugins-bad') self._clone_and_build_via_meson(url, compiler_flags) if build_mfx: compiler_flags_mfx = ['-DWITH_WAYLAND=OFF', '-DMFX_SINK=OFF'] self._clone_and_build_via_cmake(GSTREAMER_MFX_URL, compiler_flags_mfx) if build_vaapi: compiler_flags_vaapi = ['--buildtype=release'] url = '{0}gstreamer-vaapi/gstreamer-vaapi-{1}.{2}'.format( GSTREAMER_SRC_ROOT, version, GSTREAMER_ARCH_EXT) self._download_and_build_via_meson(url, compiler_flags_vaapi)
def build_hiredis(self): try: cloned_dir = utils.git_clone( build_utils.generate_fastogt_github_path('hiredis')) os.chdir(cloned_dir) make_hiredis = [ 'make', 'LIBSSH2_ENABLED=ON', 'OPENSSL_ROOT_DIR={0}'.format(self.prefix_path_), 'PREFIX={0}'.format(self.prefix_path_), 'install' ] subprocess.call(make_hiredis) except Exception as ex: raise ex finally: os.chdir(self.build_dir_path_)
def build_lmdb(self): try: cloned_dir = utils.git_clone( build_utils.generate_fastogt_github_path('lmdb')) os.chdir(cloned_dir) os.chdir('libraries/liblmdb') make_lmdb = [ 'make', 'install_static_lib', 'prefix={0}'.format(self.prefix_path_) ] # FIXME subprocess.call(make_lmdb) except Exception as ex: raise ex finally: os.chdir(self.build_dir_path_)
def build_fastonosql_core(self): self._clone_and_build_via_cmake( build_utils.generate_fastogt_github_path('fastonosql_core'), ['-DJSONC_USE_STATIC=ON', '-DOPENSSL_USE_STATIC_LIBS=ON'])
def build_leveldb(self): self._clone_and_build_via_cmake( build_utils.generate_fastogt_github_path('leveldb'), [ '-DBUILD_SHARED_LIBS=OFF', '-DLEVELDB_BUILD_TESTS=OFF', '-DLEVELDB_BUILD_BENCHMARKS=OFF' ])
def build_unqlite(self): self._clone_and_build_via_cmake( build_utils.generate_fastogt_github_path('unqlite'), [])
def build_fastoplayer(self): self._clone_and_build_via_cmake( build_utils.generate_fastogt_github_path('fastoplayer'), [])
def build_forestdb(self): self._clone_and_build_via_cmake( build_utils.generate_fastogt_github_path('forestdb'), ['-DBUILD_SHARED_LIBS=OFF'])
def build_gst_fastoml(self): compiler_flags = ['--buildtype=release'] url = build_utils.generate_fastogt_github_path('gst-fastoml') self._clone_and_build_via_meson(url, compiler_flags)
def build_gst_plugins_base(self, version): compiler_flags = ['--buildtype=release', '-Dopenexr=disabled'] url = build_utils.generate_fastogt_github_path('gst-plugins-base') self._clone_and_build_via_meson(url, compiler_flags)
def build_fastoml(self): cmake_flags = [] self._clone_and_build_via_cmake( build_utils.generate_fastogt_github_path('fastoml'), cmake_flags)
def build_tinyxml2(self): compiler_flags = [] url = build_utils.generate_fastogt_github_path('tinyxml2') self._clone_and_build_via_cmake(url, compiler_flags)