diff --git a/llvm-build/MakeLiblzma b/llvm-build/MakeLiblzma index 4f4ceff1e6c3f9da51c886fef158b0495e8a91ce..4970b9f9803323e8fd6deabe642bef9712eb1a70 100644 --- a/llvm-build/MakeLiblzma +++ b/llvm-build/MakeLiblzma @@ -15,7 +15,7 @@ SYSROOT := INSTALL_DIR := TARGET_TRIPLE := CC := -SRCS := 7zAlloc.c 7zArcIn.c 7zBuf2.c 7zBuf.c 7zCrc.c 7zCrcOpt.c 7zDec.c 7zFile.c 7zStream.c Aes.c AesOpt.c Alloc.c Bcj2.c Bra86.c Bra.c BraIA64.c CpuArch.c Delta.c LzFind.c Lzma2Dec.c Lzma2Enc.c Lzma86Dec.c Lzma86Enc.c LzmaDec.c LzmaEnc.c LzmaLib.c Ppmd7.c Ppmd7Dec.c Ppmd7Enc.c Sha256.c Sha256Opt.c Sort.c Xz.c XzCrc64.c XzCrc64Opt.c XzDec.c XzEnc.c XzIn.c +SRCS := 7zAlloc.c 7zArcIn.c 7zBuf2.c 7zBuf.c 7zCrc.c 7zCrcOpt.c 7zDec.c 7zFile.c 7zStream.c Aes.c AesOpt.c Alloc.c Bcj2.c Bra86.c Bra.c BraIA64.c CpuArch.c Delta.c LzFind.c Lzma2Dec.c Lzma2Enc.c Lzma86Dec.c Lzma86Enc.c LzmaDec.c LzmaEnc.c LzmaLib.c Ppmd7.c Ppmd7Dec.c Ppmd7Enc.c Sha256.c Sha256Opt.c Sort.c Xz.c XzCrc64.c XzCrc64Opt.c XzDec.c XzEnc.c XzIn.c MtDec.c MtCoder.c LzFindMt.c LzFindOpt.c Threads.c SRC_PREFIX := LIB_VERSION := diff --git a/llvm-build/build.py b/llvm-build/build.py index f6e465e41f14b4f8e0f9d44a4eebd2d370feede7..d2d2e05be881a75a47f99d64432869a4568e6027 100755 --- a/llvm-build/build.py +++ b/llvm-build/build.py @@ -89,7 +89,7 @@ class BuildConfig(): self.ARCHIVE_EXTENSION = '.tar.' + self.compression_format self.ARCHIVE_OPTION = '-c' + ('j' if self.compression_format == "bz2" else 'z') self.LIBXML2_VERSION = None - self.LZMA_VERSION = '22.0' + self.LZMA_VERSION = None logging.basicConfig(level=logging.INFO) self.host_projects = args.host_build_projects @@ -574,20 +574,26 @@ class BuildUtils(object): def get_mingw_python_dir(self): return self._mingw_python_dir - def get_ncurses_version(self): - ncurses_spec = os.path.join(self.build_config.REPOROOT_DIR, 'third_party', 'ncurses', 'ncurses.spec') - if os.path.exists(ncurses_spec): - with open(ncurses_spec, 'r') as file: + def get_version(self, fileName, prog): + if os.path.exists(fileName): + with open(fileName, 'r') as file: lines = file.readlines() - - prog = re.compile(r'Version:\s*(\S+)') for line in lines: version_match = prog.match(line) if version_match: return version_match.group(1) - return None + def get_ncurses_version(self): + ncurses_spec = os.path.join(self.build_config.REPOROOT_DIR, 'third_party', 'ncurses', 'ncurses.spec') + prog = re.compile(r'Version:\s*(\S+)') + return self.get_version(ncurses_spec, prog) + + def get_lzma_version(self): + lzma_version_file = os.path.join(self.build_config.REPOROOT_DIR, 'third_party', 'lzma', 'C', '7zVersion.h') + prog = re.compile(r'#define MY_VERSION_NUMBERS "(.*?)"') + return self.get_version(lzma_version_file, prog) + def merge_ncurses_install_dir(self, platform_triple, *args): return self.merge_out_path('third_party', 'ncurses', 'install', platform_triple, *args) @@ -2580,6 +2586,9 @@ def main(): if build_config.build_ncurses: llvm_libs.build_ncurses(llvm_make, llvm_install, build_utils.use_platform()) + build_config.LZMA_VERSION = build_utils.get_lzma_version() + if build_config.LZMA_VERSION is None: + raise Exception('Lzma version information not found, please check if the 7zVersion.h file exists') if build_config.enable_lzma_7zip: llvm_libs.build_lzma(llvm_make, llvm_install)