project_version = meson.project_version() versioned_root = get_option('prefix') / 'libderp-dev.' + project_version install_mode = get_option('install_mode') version_split = project_version.split('.') major = version_split[0] minor = version_split[1] libderp_sources = files( 'common.c', 'vector.c', 'list.c', 'hashmap.c', 'treemap.c', ) inc_dirs = include_directories('..' / 'include') if install_mode == 'dev' libderp = library('derp', libderp_sources, include_directories : inc_dirs, version : project_version, soversion : '@0@.@1@'.format(major, minor), install : true, install_dir : versioned_root / 'lib', ) libderp_static = static_library('derp', libderp_sources, include_directories : inc_dirs, install : true, install_dir : versioned_root / 'lib' / 'static', ) libderp_dep = declare_dependency( link_with : libderp, include_directories : inc_dirs, ) # Shared library pkg-config file libderp_pc = configure_file( input: 'libderp.pc.in', output: 'libderp.pc', configuration: { 'prefix': get_option('prefix'), 'includedir': versioned_root / 'include', 'libdir': versioned_root / 'lib', 'version': project_version, 'extra_libs': '', }, install: true, install_dir: versioned_root, ) # Static library pkg-config file libderp_static_pc = configure_file( input: 'libderp.pc.in', output: 'libderp-static.pc', configuration: { 'prefix': get_option('prefix'), 'includedir': versioned_root / 'include', 'libdir': versioned_root / 'lib/static', 'version': project_version, 'extra_libs': '-static', }, install: true, install_dir: versioned_root, ) else # System install: only install shared library to system libdir, no headers or pkg-config system_libdir = get_option('libdir') libderp = library('derp', libderp_sources, include_directories : inc_dirs, version : project_version, soversion : '@0@.@1@'.format(major, minor), install : true, install_dir : system_libdir, ) endif