build with Meson instead of autotools

So long, autotools!  This is my last MPD related project to migrate
away from it.  It has its strengths, but also very obvious weaknesses
and weirdnesses.  Today, many of its quirks are not needed anymore,
and are cumbersome and slow.  Now welcome our new Meson overlords!
This commit is contained in:
Max Kellermann
2017-12-29 17:12:55 +01:00
parent 13ce142df1
commit 94592c1406
111 changed files with 4039 additions and 7270 deletions

29
src/storage/meson.build Normal file
View File

@@ -0,0 +1,29 @@
storage_api = static_library(
'storage_api',
'StorageInterface.cxx',
include_directories: inc,
)
storage_api_dep = declare_dependency(
link_with: storage_api,
)
subdir('plugins')
storage_glue = static_library(
'storage_glue',
'Registry.cxx',
'CompositeStorage.cxx',
'MemoryDirectoryReader.cxx',
'Configured.cxx',
'StorageState.cxx',
include_directories: inc,
)
storage_glue_dep = declare_dependency(
link_with: storage_glue,
dependencies: [
storage_plugins_dep,
],
)

View File

@@ -0,0 +1,61 @@
storage_plugins_sources = [
'LocalStorage.cxx',
]
webdav_option = get_option('webdav')
enable_webdav = false
if not webdav_option.disabled()
enable_webdav = true
if not curl_dep.found()
if webdav_option.enabled()
error('WebDAV requires CURL')
endif
enable_webdav = false
endif
if not expat_dep.found()
if webdav_option.enabled()
error('WebDAV requires Expat')
endif
enable_webdav = false
endif
if enable_webdav
storage_plugins_sources += 'CurlStorage.cxx'
endif
endif
conf.set('ENABLE_WEBDAV', enable_webdav)
if nfs_dep.found()
storage_plugins_sources += 'NfsStorage.cxx'
endif
if smbclient_dep.found()
storage_plugins_sources += 'SmbclientStorage.cxx'
endif
if enable_udisks
storage_plugins_sources += 'UdisksStorage.cxx'
endif
storage_plugins = static_library(
'storage_plugins',
storage_plugins_sources,
include_directories: inc,
dependencies: [
curl_dep,
dbus_dep,
expat_dep,
nfs_dep,
smbclient_dep,
],
)
storage_plugins_dep = declare_dependency(
link_with: storage_plugins,
dependencies: [
storage_api_dep,
fs_dep,
],
)