/*
- * Copyright (C) 2011 - David Goulet <david.goulet@polymtl.ca>
+ * Copyright (C) 2011 David Goulet <david.goulet@polymtl.ca>
*
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License, version 2 only,
- * as published by the Free Software Foundation.
+ * SPDX-License-Identifier: GPL-2.0-only
*
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License along
- * with this program; if not, write to the Free Software Foundation, Inc.,
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
#ifndef _LTTNG_CMD_H
#define DECL_COMMAND(_name) \
extern int cmd_##_name(int, const char **)
+#ifdef LTTNG_EMBED_HELP
+# define HELP_MSG_NAME help_msg
+# define SHOW_HELP_ERROR_LINE ERR("Cannot show --help for `lttng-%s`", argv[0]);
+#else
+# define HELP_MSG_NAME NULL
+# define SHOW_HELP_ERROR_LINE ;
+#endif
+
+#define SHOW_HELP() \
+ do { \
+ ret = show_cmd_help(argv[0], HELP_MSG_NAME); \
+ \
+ if (ret) { \
+ SHOW_HELP_ERROR_LINE \
+ ret = CMD_ERROR; \
+ } \
+ } while (0)
+
enum cmd_error_code {
CMD_SUCCESS = 0,
CMD_ERROR,
DECL_COMMAND(add_context);
DECL_COMMAND(set_session);
DECL_COMMAND(version);
-DECL_COMMAND(calibrate);
DECL_COMMAND(view);
DECL_COMMAND(enable_consumer);
DECL_COMMAND(disable_consumer);
DECL_COMMAND(load);
DECL_COMMAND(track);
DECL_COMMAND(untrack);
+DECL_COMMAND(metadata);
+DECL_COMMAND(regenerate);
+DECL_COMMAND(rotate);
+DECL_COMMAND(enable_rotation);
+DECL_COMMAND(disable_rotation);
+DECL_COMMAND(clear);
+
+extern int cmd_help(int argc, const char **argv,
+ const struct cmd_struct commands[]);
#endif /* _LTTNG_CMD_H */