diff options
author | Jack Lloyd <[email protected]> | 2018-10-18 11:56:22 -0400 |
---|---|---|
committer | Jack Lloyd <[email protected]> | 2018-10-18 11:56:22 -0400 |
commit | d99b58135277af3b8c028314bef9156f1a41b576 (patch) | |
tree | 66ceb4dbf7fe5230a60784ded208bc82cc29419d | |
parent | 91eb6406383dfbf62848bf7af77e82937e7b69b3 (diff) |
Add an OS flag for if the shared lib should be symlinked or not
-rwxr-xr-x | configure.py | 9 | ||||
-rw-r--r-- | src/build-data/os/openbsd.txt | 2 | ||||
-rw-r--r-- | src/build-data/os/windows.txt | 2 |
3 files changed, 7 insertions, 6 deletions
diff --git a/configure.py b/configure.py index c5a3fda32..554195d41 100755 --- a/configure.py +++ b/configure.py @@ -1368,6 +1368,7 @@ class OsInfo(InfoObject): # pylint: disable=too-many-instance-attributes 'cli_exe_name': 'botan', 'lib_prefix': 'lib', 'library_name': 'botan{suffix}-{major}', + 'shared_lib_symlinks': 'yes', }) if lex.ar_command == 'ar' and lex.ar_options == '': @@ -1414,6 +1415,7 @@ class OsInfo(InfoObject): # pylint: disable=too-many-instance-attributes self.static_suffix = lex.static_suffix self.target_features = lex.target_features self.use_stack_protector = (lex.use_stack_protector == "true") + self.shared_lib_uses_symlinks = (lex.shared_lib_symlinks == 'yes') def matches_name(self, nm): if nm in self._aliases: @@ -1815,11 +1817,6 @@ def create_template_vars(source_paths, build_paths, options, modules, cc, arch, return path return os.path.join(build_dir, path) - def shared_lib_uses_symlinks(): - if options.os in ['windows', 'openbsd']: - return False - return True - variables = { 'version_major': Version.major(), 'version_minor': Version.minor(), @@ -1886,7 +1883,7 @@ def create_template_vars(source_paths, build_paths, options, modules, cc, arch, 'build_coverage' : options.with_coverage_info or options.with_coverage, - 'symlink_shared_lib': options.build_shared_lib and shared_lib_uses_symlinks(), + 'symlink_shared_lib': options.build_shared_lib and osinfo.shared_lib_uses_symlinks, 'libobj_dir': build_paths.libobj_dir, 'cliobj_dir': build_paths.cliobj_dir, diff --git a/src/build-data/os/openbsd.txt b/src/build-data/os/openbsd.txt index ad35da15b..a0458988e 100644 --- a/src/build-data/os/openbsd.txt +++ b/src/build-data/os/openbsd.txt @@ -3,6 +3,8 @@ soname_pattern_base "lib{libname}.so" soname_pattern_abi "lib{libname}.so.{abi_rev}.{version_minor}" soname_pattern_patch "lib{libname}.so.{abi_rev}.{version_minor}" +shared_lib_symlinks no + <target_features> posix1 posix_mlock diff --git a/src/build-data/os/windows.txt b/src/build-data/os/windows.txt index db6245a83..57781d7c8 100644 --- a/src/build-data/os/windows.txt +++ b/src/build-data/os/windows.txt @@ -6,6 +6,8 @@ obj_suffix obj static_suffix lib lib_prefix '' +shared_lib_symlinks no + # For historical reasons? the library does not have the major number on Windows # This should probably be fixed in a future major release. library_name 'botan{suffix}' |