Fixes #17278.
'systemd-sysusers.standalone',
'src/sysusers/sysusers.c',
include_directories : includes,
+ c_args : '-DSTANDALONE',
link_with : [libshared_static,
libbasic,
libbasic_gcrypt,
'systemd-tmpfiles.standalone',
systemd_tmpfiles_sources,
include_directories : includes,
+ c_args : '-DSTANDALONE',
link_with : [libshared_static,
libbasic,
libbasic_gcrypt,
break;
case ARG_IMAGE:
+#ifdef STANDALONE
+ return log_error_errno(SYNTHETIC_ERRNO(EOPNOTSUPP),
+ "This systemd-sysusers version is compiled without support for --image=.");
+#else
r = parse_path_argument_and_warn(optarg, /* suppress_root= */ false, &arg_image);
if (r < 0)
return r;
break;
+#endif
case ARG_REPLACE:
if (!path_is_absolute(optarg) ||
}
static int run(int argc, char *argv[]) {
+#ifndef STANDALONE
_cleanup_(loop_device_unrefp) LoopDevice *loop_device = NULL;
_cleanup_(decrypted_image_unrefp) DecryptedImage *decrypted_image = NULL;
_cleanup_(umount_and_rmdir_and_freep) char *unlink_dir = NULL;
+#endif
_cleanup_close_ int lock = -1;
Item *i;
int r;
if (r < 0)
return r;
+#ifndef STANDALONE
if (arg_image) {
assert(!arg_root);
if (!arg_root)
return log_oom();
}
+#else
+ assert(!arg_image);
+#endif
/* If command line arguments are specified along with --replace, read all
* configuration files and insert the positional arguments at the specified
break;
case ARG_IMAGE:
+#ifdef STANDALONE
+ return log_error_errno(SYNTHETIC_ERRNO(EOPNOTSUPP),
+ "This systemd-tmpfiles version is compiled without support for --image=.");
+#else
r = parse_path_argument_and_warn(optarg, /* suppress_root= */ false, &arg_image);
if (r < 0)
return r;
-
- /* Imply -E here since it makes little sense to create files persistently in the /run mointpoint of a disk image */
+#endif
+ /* Imply -E here since it makes little sense to create files persistently in the /run mountpoint of a disk image */
_fallthrough_;
case 'E':
ItemArray, item_array_free);
static int run(int argc, char *argv[]) {
+#ifndef STANDALONE
_cleanup_(loop_device_unrefp) LoopDevice *loop_device = NULL;
_cleanup_(decrypted_image_unrefp) DecryptedImage *decrypted_image = NULL;
_cleanup_(umount_and_rmdir_and_freep) char *unlink_dir = NULL;
+#endif
_cleanup_strv_free_ char **config_dirs = NULL;
bool invalid_config = false;
ItemArray *a;
if (r < 0)
return r;
+#ifndef STANDALONE
if (arg_image) {
assert(!arg_root);
if (!arg_root)
return log_oom();
}
+#else
+ assert(!arg_image);
+#endif
items = ordered_hashmap_new(&item_array_hash_ops);
globs = ordered_hashmap_new(&item_array_hash_ops);