systemd: base "ListenStream" on build options
Make `mpd.socket` configurable based on build options, so that e.g. `ListenStream=6600` is not added if `tcp` option is not enabled.
This commit is contained in:
		| @@ -1,5 +1,15 @@ | |||||||
| systemd_unit_conf = configuration_data() | systemd_unit_conf = configuration_data() | ||||||
| systemd_unit_conf.set('prefix', get_option('prefix')) | systemd_unit_conf.set('prefix', get_option('prefix')) | ||||||
|  |  | ||||||
|  | systemd_socket_conf = configuration_data() | ||||||
|  | listen_streams = [] | ||||||
|  | if get_option('local_socket') | ||||||
|  |   listen_streams += 'ListenStream=%t/mpd/socket' | ||||||
|  | endif | ||||||
|  | if get_option('tcp') | ||||||
|  |   listen_streams += 'ListenStream=6600' | ||||||
|  | endif | ||||||
|  | systemd_socket_conf.set('listen_streams', '\n'.join(listen_streams)) | ||||||
|  |  | ||||||
| subdir('system') | subdir('system') | ||||||
| subdir('user') | subdir('user') | ||||||
|   | |||||||
| @@ -12,8 +12,10 @@ if systemd_system_unit_dir == '' | |||||||
|   systemd_system_unit_dir = join_paths(get_option('prefix'), 'lib', 'systemd', 'system') |   systemd_system_unit_dir = join_paths(get_option('prefix'), 'lib', 'systemd', 'system') | ||||||
| endif | endif | ||||||
|  |  | ||||||
| install_data( | configure_file( | ||||||
|   'mpd.socket', |   input: 'mpd.socket.in', | ||||||
|  |   output: 'mpd.socket', | ||||||
|  |   configuration: systemd_socket_conf, | ||||||
|   install_dir: systemd_system_unit_dir, |   install_dir: systemd_system_unit_dir, | ||||||
| ) | ) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -1,6 +1,5 @@ | |||||||
| [Socket] | [Socket] | ||||||
| ListenStream=%t/mpd/socket | @listen_streams@ | ||||||
| ListenStream=6600 |  | ||||||
| Backlog=5 | Backlog=5 | ||||||
| KeepAlive=true | KeepAlive=true | ||||||
| PassCredentials=true | PassCredentials=true | ||||||
| @@ -12,9 +12,10 @@ if systemd_user_unit_dir == '' | |||||||
|   systemd_user_unit_dir = join_paths(get_option('prefix'), 'lib', 'systemd', 'user') |   systemd_user_unit_dir = join_paths(get_option('prefix'), 'lib', 'systemd', 'user') | ||||||
| endif | endif | ||||||
|  |  | ||||||
| # copy the system socket unit to the "user" directory | configure_file( | ||||||
| install_data( |   input: join_paths('..', 'system', 'mpd.socket.in'), | ||||||
|   join_paths('..', 'system', 'mpd.socket'), |   output: 'mpd.socket', | ||||||
|  |   configuration: systemd_socket_conf, | ||||||
|   install_dir: systemd_user_unit_dir, |   install_dir: systemd_user_unit_dir, | ||||||
| ) | ) | ||||||
|  |  | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 naglis
					naglis