tootle-linux-client/meson.build

157 lines
4.5 KiB
Meson
Raw Normal View History

2021-02-02 16:56:47 +01:00
project('com.github.bleakgrey.tootle', 'vala', 'c', version: '1.0.0')
2020-09-05 10:02:42 +02:00
2018-04-14 14:09:06 +02:00
add_global_arguments([
2020-05-30 13:39:41 +02:00
'-DGETTEXT_PACKAGE="@0@"'.format(meson.project_name()),
2018-04-14 14:09:06 +02:00
],
language: 'c',
)
2020-09-10 19:10:24 +02:00
libhandy_dep = dependency('libhandy-1', version: '>= 1.0', required: false)
2020-06-01 14:40:50 +02:00
if not libhandy_dep.found()
libhandy = subproject(
'libhandy',
default_options: [
'examples=false',
2020-06-29 23:43:45 +02:00
'glade_catalog=disabled',
2020-06-01 14:40:50 +02:00
'tests=false',
]
)
2020-06-29 23:43:45 +02:00
libhandy_dep = declare_dependency(
dependencies: [
libhandy.get_variable('libhandy_dep'),
libhandy.get_variable('libhandy_vapi'),
]
)
2020-06-01 14:40:50 +02:00
endif
2021-02-12 16:26:37 +01:00
config = configuration_data()
config.set('EXEC_NAME', meson.project_name())
config.set('GETTEXT_PACKAGE', meson.project_name())
config.set('RESOURCES', '/' + '/'.join(meson.project_name().split('.')) + '/' )
config.set('VERSION', meson.project_version())
config.set('PREFIX', get_option('prefix'))
config.set('NAME', 'Tootle')
config.set('WEBSITE', 'https://github.com/bleakgrey/tootle')
config.set('SUPPORT_WEBSITE', 'https://github.com/bleakgrey/tootle/issues')
config.set('COPYRIGHT', '© 2018-2020 bleak_grey')
config.set('ACCOUNT_STORE', 'FileAccountStore')
gnome = import('gnome')
i18n = import('i18n')
asresources = gnome.compile_resources(
'as-resources', 'data/gresource.xml',
source_dir: 'data',
c_name: 'as'
)
sources = files(
2018-04-14 14:09:06 +02:00
'src/Application.vala',
'src/Desktop.vala',
2019-03-07 17:16:52 +01:00
'src/Drawing.vala',
'src/Html.vala',
2020-05-29 14:19:35 +02:00
'src/Request.vala',
2020-09-05 10:02:42 +02:00
'src/DateTime.vala',
2021-02-12 16:26:37 +01:00
'src/Services/Accounts/InstanceAccount.vala',
'src/Services/Accounts/AccountStore.vala',
'src/Services/Accounts/FileAccountStore.vala',
2021-02-20 13:46:57 +01:00
'src/Services/Accounts/IAccountHolder.vala',
2021-02-12 16:26:37 +01:00
'src/Services/Accounts/Mastodon/MastodonAccount.vala',
2020-05-29 14:19:35 +02:00
'src/Services/Streams.vala',
'src/Services/Settings.vala',
'src/Services/IStreamListener.vala',
'src/Services/Cache.vala',
'src/Services/Network.vala',
2018-04-14 14:09:06 +02:00
'src/API/Account.vala',
2020-06-29 23:43:45 +02:00
'src/API/AccountField.vala',
2018-04-30 19:56:02 +02:00
'src/API/Relationship.vala',
2018-04-28 18:27:10 +02:00
'src/API/Mention.vala',
'src/API/Tag.vala',
2018-04-14 14:09:06 +02:00
'src/API/Status.vala',
2020-05-29 14:19:35 +02:00
'src/API/Visibility.vala',
2018-04-17 14:01:55 +02:00
'src/API/Notification.vala',
'src/API/NotificationType.vala',
2018-05-04 22:57:31 +02:00
'src/API/Attachment.vala',
2020-06-03 17:06:11 +02:00
'src/API/Conversation.vala',
2020-07-28 20:30:45 +02:00
'src/API/List.vala',
2020-08-01 17:40:56 +02:00
'src/API/SearchResults.vala',
2020-06-20 12:04:58 +02:00
'src/API/Entity.vala',
2020-06-03 17:06:11 +02:00
'src/Widgets/Widgetizable.vala',
2020-05-29 14:19:35 +02:00
'src/Widgets/Avatar.vala',
'src/Widgets/AccountsButton.vala',
2020-09-05 10:02:42 +02:00
'src/Widgets/TimelineMenu.vala',
2018-04-28 18:27:10 +02:00
'src/Widgets/RichLabel.vala',
2019-03-11 15:14:37 +01:00
'src/Widgets/Status.vala',
'src/Widgets/Notification.vala',
2020-08-01 23:47:22 +02:00
'src/Widgets/Conversation.vala',
2020-05-29 14:19:35 +02:00
'src/Widgets/VisibilityPopover.vala',
'src/Widgets/Attachment/Box.vala',
'src/Widgets/Attachment/Slot.vala',
'src/Widgets/Attachment/Picture.vala',
'src/Widgets/AdaptiveButton.vala',
'src/Widgets/MarkupPolicy.vala',
'src/Widgets/MarkupView.vala',
2019-03-11 15:14:37 +01:00
'src/Dialogs/ISavedWindow.vala',
2020-09-10 19:10:24 +02:00
'src/Dialogs/NewAccount.vala',
2019-03-11 15:14:37 +01:00
'src/Dialogs/MainWindow.vala',
2020-09-05 10:02:42 +02:00
'src/Dialogs/About.vala',
2019-03-11 15:14:37 +01:00
'src/Dialogs/Compose.vala',
'src/Dialogs/Preferences.vala',
2020-07-28 20:30:45 +02:00
'src/Dialogs/ListEditor.vala',
2020-05-29 14:19:35 +02:00
'src/Views/Base.vala',
'src/Views/TabbedBase.vala',
'src/Views/Main.vala',
2019-03-11 15:14:37 +01:00
'src/Views/Timeline.vala',
'src/Views/Home.vala',
'src/Views/Local.vala',
'src/Views/Federated.vala',
'src/Views/Notifications.vala',
2020-06-03 14:41:21 +02:00
'src/Views/Conversations.vala',
'src/Views/Bookmarks.vala',
'src/Views/Thread.vala',
2019-03-11 15:14:37 +01:00
'src/Views/Profile.vala',
'src/Views/Favorites.vala',
'src/Views/Search.vala',
'src/Views/Hashtag.vala',
2020-07-28 20:30:45 +02:00
'src/Views/Lists.vala',
'src/Views/List.vala',
2021-02-12 16:26:37 +01:00
)
libsecret_dep = dependency('libsecret-1', required: false)
if not libsecret_dep.found()
warning('Keyring support disabled. Accounts will be stored in a text file.')
else
config.set('ACCOUNT_STORE','SecretAccountStore')
sources += 'src/Services/Accounts/'+config.get('ACCOUNT_STORE')+'.vala'
endif
build_file = configure_file(
input: 'src/Build.vala.in',
output: 'Build.vala',
configuration: config
)
executable(
meson.project_name(),
asresources,
build_file,
sources,
2018-04-14 14:09:06 +02:00
dependencies: [
2018-10-23 12:05:24 +02:00
dependency('gtk+-3.0', version: '>=3.22.0'),
2018-04-14 14:09:06 +02:00
dependency('glib-2.0', version: '>=2.30.0'),
2018-10-27 10:29:25 +02:00
dependency('gee-0.8', version: '>=0.8.5'),
2020-05-29 14:19:35 +02:00
dependency('libsoup-2.4'),
2020-06-20 12:04:58 +02:00
dependency('json-glib-1.0', version: '>=1.4.4'),
dependency('libxml-2.0'),
2020-06-01 14:40:50 +02:00
libhandy_dep,
2021-02-12 16:26:37 +01:00
libsecret_dep,
2018-04-14 14:09:06 +02:00
],
2020-05-29 14:19:35 +02:00
install: true,
2018-04-14 14:09:06 +02:00
)
subdir('data')
subdir('po')
meson.add_install_script('meson/post_install.py')