aboutsummaryrefslogtreecommitdiff
path: root/include/pkg.h
blob: 47d19186ba645e240f470a8ab72775ac1b36baa2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#ifndef PKGIT_PKG_H
#define PKGIT_PKG_H

#include "str.h"

struct package_t;
typedef bool (*package_hook_cb_t)(struct package_t *self);
typedef str (*package_version_cb_t)(struct package_t *self);

typedef struct package_t {
	str name, version, url, src;
	unsigned int dep_count;
	bool is_local;
	package_hook_cb_t setup, build, install, rem, on_update, fetch_sources;
	package_version_cb_t fetch_latest_version;
} package_t;

bool setup(package_t *self), build(package_t *self),
	install(package_t *self), rem(package_t *self),
	on_update(package_t *self),
	fetch_sources(package_t *self);
str fetch_latest_version(package_t *self);

#endif