contrib/chg/util.h
author Martin von Zweigbergk <martinvonz@google.com>
Wed, 15 Jul 2020 22:24:02 -0700
changeset 45132 9d532329ee97
parent 35998 9724f54923ec
permissions -rw-r--r--
extensions: make `hg help extensions` list disabled extensions with PyOxidizer `setup.py` has a mechanism for generating a list of bundled extensions and their documenation and putting it in a `hgext/__index__.py` file. That file is then read from `extensions.py`, which makes `hg help extensions` work in py2exe binaries. This patch makes it so `setup.py` produces the `hgext/__index__.py` file also when called by PyOxidizer. Thanks to Matt Harbison for pointing out the existence of `__index__.py`! Differential Revision: https://phab.mercurial-scm.org/D8758

/*
 * Utility functions
 *
 * Copyright (c) 2011 Yuya Nishihara <yuya@tcha.org>
 *
 * This software may be used and distributed according to the terms of the
 * GNU General Public License version 2 or any later version.
 */

#ifndef UTIL_H_
#define UTIL_H_

#ifdef __GNUC__
#define PRINTF_FORMAT_ __attribute__((format(printf, 1, 2)))
#define UNUSED_ __attribute__((unused))
#else
#define PRINTF_FORMAT_
#define UNUSED_
#endif

void abortmsg(const char *fmt, ...) PRINTF_FORMAT_;
void abortmsgerrno(const char *fmt, ...) PRINTF_FORMAT_;

void enablecolor(void);
void enabledebugmsg(void);
void debugmsg(const char *fmt, ...) PRINTF_FORMAT_;

void fchdirx(int dirfd);
void fsetcloexec(int fd);
void *mallocx(size_t size);
void *reallocx(void *ptr, size_t size);

int runshellcmd(const char *cmd, const char *envp[], const char *cwd);

#endif /* UTIL_H_ */