Build only one kind of library per build.
There is no need to build the static lib if we are building a dynamically linked binary. And vice versa for shared lib and statically linked binary.
This commit is contained in:
parent
3c11bc602d
commit
4adae738d5
|
@ -519,7 +519,7 @@ class Builder:
|
||||||
|
|
||||||
|
|
||||||
class MakeBuilder(Builder):
|
class MakeBuilder(Builder):
|
||||||
configure_option = ""
|
configure_option = static_configure_option = dynamic_configure_option = ""
|
||||||
make_option = ""
|
make_option = ""
|
||||||
install_option = ""
|
install_option = ""
|
||||||
configure_script = "configure"
|
configure_script = "configure"
|
||||||
|
@ -529,10 +529,14 @@ class MakeBuilder(Builder):
|
||||||
|
|
||||||
def _configure(self, context):
|
def _configure(self, context):
|
||||||
context.try_skip(self.build_path)
|
context.try_skip(self.build_path)
|
||||||
|
configure_option = "{} {} {}".format(
|
||||||
|
self.configure_option,
|
||||||
|
self.static_configure_option if self.buildEnv.build_static else self.dynamic_configure_option,
|
||||||
|
self.buildEnv.configure_option)
|
||||||
command = "{configure_script} {configure_option} --prefix {install_dir} --libdir {libdir}"
|
command = "{configure_script} {configure_option} --prefix {install_dir} --libdir {libdir}"
|
||||||
command = command.format(
|
command = command.format(
|
||||||
configure_script = pj(self.source_path, self.configure_script),
|
configure_script = pj(self.source_path, self.configure_script),
|
||||||
configure_option = "{} {}".format(self.configure_option, self.buildEnv.configure_option),
|
configure_option = configure_option,
|
||||||
install_dir = self.buildEnv.install_dir,
|
install_dir = self.buildEnv.install_dir,
|
||||||
libdir = pj(self.buildEnv.install_dir, self.buildEnv.libprefix)
|
libdir = pj(self.buildEnv.install_dir, self.buildEnv.libprefix)
|
||||||
)
|
)
|
||||||
|
@ -674,8 +678,9 @@ class Xapian(Dependency):
|
||||||
patches = ["xapian_pkgconfig.patch"]
|
patches = ["xapian_pkgconfig.patch"]
|
||||||
|
|
||||||
class Builder(MakeBuilder):
|
class Builder(MakeBuilder):
|
||||||
configure_option = ("--enable-shared --enable-static --disable-sse "
|
configure_option = "--disable-sse --disable-backend-inmemory --disable-documentation"
|
||||||
"--disable-backend-inmemory --disable-documentation")
|
dynamic_configure_option = "--enable-shared --disable-static"
|
||||||
|
static_configure_option = "--enable-static --disable-shared"
|
||||||
configure_env = {'_format_LDFLAGS' : "-L{buildEnv.install_dir}/{buildEnv.libprefix}",
|
configure_env = {'_format_LDFLAGS' : "-L{buildEnv.install_dir}/{buildEnv.libprefix}",
|
||||||
'_format_CXXFLAGS' : "-I{buildEnv.install_dir}/include"}
|
'_format_CXXFLAGS' : "-I{buildEnv.install_dir}/include"}
|
||||||
|
|
||||||
|
@ -726,7 +731,9 @@ class MicroHttpd(Dependency):
|
||||||
'http://ftp.gnu.org/gnu/libmicrohttpd/libmicrohttpd-0.9.46.tar.gz')
|
'http://ftp.gnu.org/gnu/libmicrohttpd/libmicrohttpd-0.9.46.tar.gz')
|
||||||
|
|
||||||
class Builder(MakeBuilder):
|
class Builder(MakeBuilder):
|
||||||
configure_option = "--enable-shared --enable-static --disable-https --without-libgcrypt --without-libcurl"
|
configure_option = "--disable-https --without-libgcrypt --without-libcurl"
|
||||||
|
dynamic_configure_option = "--enable-shared --disable-static"
|
||||||
|
static_configure_option = "--enable-static --disable-shared"
|
||||||
|
|
||||||
|
|
||||||
class Icu(Dependency):
|
class Icu(Dependency):
|
||||||
|
@ -755,15 +762,9 @@ class Icu(Dependency):
|
||||||
|
|
||||||
class Builder(MakeBuilder):
|
class Builder(MakeBuilder):
|
||||||
subsource_dir = "source"
|
subsource_dir = "source"
|
||||||
|
configure_option = "--disable-samples --disable-tests --disable-extras --disable-dyload"
|
||||||
@property
|
dynamic_configure_option = "--enable-shared --disable-static"
|
||||||
def configure_option(self):
|
static_configure_option = "--enable-static --disable-shared"
|
||||||
default_configure_option = "--disable-samples --disable-tests --disable-extras --disable-dyload"
|
|
||||||
if self.buildEnv.build_static:
|
|
||||||
default_configure_option += " --enable-static --disable-shared"
|
|
||||||
else:
|
|
||||||
default_configure_option += " --enable-shared --enable-shared"
|
|
||||||
return default_configure_option
|
|
||||||
|
|
||||||
|
|
||||||
class Icu_native(Icu):
|
class Icu_native(Icu):
|
||||||
|
|
Loading…
Reference in New Issue