aboutsummaryrefslogtreecommitdiff
path: root/src/interfaces/ecpg/compatlib/meson.build
diff options
context:
space:
mode:
Diffstat (limited to 'src/interfaces/ecpg/compatlib/meson.build')
-rw-r--r--src/interfaces/ecpg/compatlib/meson.build39
1 files changed, 30 insertions, 9 deletions
diff --git a/src/interfaces/ecpg/compatlib/meson.build b/src/interfaces/ecpg/compatlib/meson.build
index 5887cb92b52..b803000c708 100644
--- a/src/interfaces/ecpg/compatlib/meson.build
+++ b/src/interfaces/ecpg/compatlib/meson.build
@@ -1,11 +1,29 @@
-export_file = custom_target('libpq.exports', kwargs: gen_export_kwargs)
-
-ecpg_compat = both_libraries('libecpg_compat',
+ecpg_compat_sources = files(
'informix.c',
- include_directories: ['.', ecpg_inc, postgres_inc, libpq_inc],
- c_args: ['-DSO_MAJOR_VERSION=3'],
- dependencies: [frontend_code, thread_dep],
- link_with: [ecpglib, ecpg_pgtypes],
+)
+ecpg_compat_so_sources = [] # for shared lib, in addition to the above
+
+ecpg_compat_inc = [include_directories('.'), ecpg_inc, libpq_inc]
+ecpg_compat_c_args = ['-DSO_MAJOR_VERSION=3']
+export_file = custom_target('libecpg_compat.exports', kwargs: gen_export_kwargs)
+
+# see src/interfaces/libpq/meson.build
+ecpg_compat_st = static_library('libecpg_compat',
+ ecpg_compat_sources,
+ include_directories: ecpg_compat_inc,
+ c_args: ecpg_compat_c_args,
+ dependencies: [frontend_stlib_code, thread_dep],
+ link_with: [ecpglib_st, ecpg_pgtypes_st],
+ kwargs: default_lib_args,
+)
+ecpg_targets += ecpg_compat_st
+
+ecpg_compat_so = shared_library('libecpg_compat',
+ ecpg_compat_sources + ecpg_compat_so_sources,
+ include_directories: ecpg_compat_inc,
+ c_args: ecpg_compat_c_args,
+ dependencies: [frontend_shlib_code, thread_dep],
+ link_with: [ecpglib_so, ecpg_pgtypes_so],
soversion: host_system != 'windows' ? '3' : '',
darwin_versions: ['3', '3.' + pg_version_major.to_string()],
version: '3.' + pg_version_major.to_string(),
@@ -13,10 +31,13 @@ ecpg_compat = both_libraries('libecpg_compat',
link_depends: export_file,
kwargs: default_lib_args,
)
-ecpg_targets += [ecpg_compat.get_shared_lib(), ecpg_compat.get_static_lib()]
+ecpg_targets += ecpg_compat_so
pkgconfig.generate(
- ecpg_compat.get_shared_lib(),
+ name: 'libecpg_compat',
description: 'PostgreSQL libecpg_compat library',
url: pg_url,
+ libraries: ecpg_compat_so,
+ libraries_private: [frontend_stlib_code, thread_dep],
+ requires_private: ['libecpg', 'libpgtypes'],
)