Get ICU source from SVN instead of Release archive.
ICU doesn't provide data sources in their release archives but directly pre-compiled data. As we need to compile ourselves our data to remove unwanted data, we need to get the sources directly from the SVN.
This commit is contained in:
parent
c2ad927f80
commit
e50dc846a5
|
@ -5,6 +5,7 @@ from dependency_utils import (
|
||||||
Dependency,
|
Dependency,
|
||||||
ReleaseDownload,
|
ReleaseDownload,
|
||||||
GitClone,
|
GitClone,
|
||||||
|
SvnClone,
|
||||||
MakeBuilder,
|
MakeBuilder,
|
||||||
CMakeBuilder,
|
CMakeBuilder,
|
||||||
MesonBuilder,
|
MesonBuilder,
|
||||||
|
@ -175,34 +176,16 @@ class MicroHttpd(Dependency):
|
||||||
|
|
||||||
class Icu(Dependency):
|
class Icu(Dependency):
|
||||||
name = "icu4c"
|
name = "icu4c"
|
||||||
version = "58_2"
|
version = "58.2"
|
||||||
|
|
||||||
class Source(ReleaseDownload):
|
class Source(SvnClone):
|
||||||
name = "icu4c"
|
name = "icu4c"
|
||||||
|
svn_remote = "http://source.icu-project.org/repos/icu/tags/release-58-2/icu4c"
|
||||||
|
svn_dir = "icu4c"
|
||||||
|
|
||||||
@property
|
|
||||||
def source_dir(self):
|
|
||||||
return "{}-{}".format(self.name, self.target.version)
|
|
||||||
|
|
||||||
archive = Remotefile('icu4c-58_2-src.tgz',
|
|
||||||
'2b0a4410153a9b20de0e20c7d8b66049a72aef244b53683d0d7521371683da0c',
|
|
||||||
'https://freefr.dl.sourceforge.net/project/icu/ICU4C/58.2/icu4c-58_2-src.tgz')
|
|
||||||
patches = ["icu4c_fix_static_lib_name_mingw.patch",
|
patches = ["icu4c_fix_static_lib_name_mingw.patch",
|
||||||
"icu4c_android_elf64_st_info.patch"]
|
"icu4c_android_elf64_st_info.patch"]
|
||||||
data = Remotefile('icudt56l.dat',
|
|
||||||
'e23d85eee008f335fc49e8ef37b1bc2b222db105476111e3d16f0007d371cbca')
|
|
||||||
|
|
||||||
def _download_data(self, context):
|
|
||||||
self.buildEnv.download(self.data)
|
|
||||||
|
|
||||||
def _copy_data(self, context):
|
|
||||||
context.try_skip(self.extract_path)
|
|
||||||
shutil.copyfile(pj(self.buildEnv.archive_dir, self.data.name), pj(self.extract_path, 'source', 'data', 'in', self.data.name))
|
|
||||||
|
|
||||||
def prepare(self):
|
|
||||||
super().prepare()
|
|
||||||
self.command("download_data", self._download_data)
|
|
||||||
self.command("copy_data", self._copy_data)
|
|
||||||
|
|
||||||
class Builder(MakeBuilder):
|
class Builder(MakeBuilder):
|
||||||
subsource_dir = "source"
|
subsource_dir = "source"
|
||||||
|
|
Loading…
Reference in New Issue