libalpm
Arch Linux Package Manager Library
deps.h
Go to the documentation of this file.
1/*
2 * deps.h
3 *
4 * Copyright (c) 2006-2024 Pacman Development Team <pacman-dev@lists.archlinux.org>
5 * Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
6 * Copyright (c) 2005 by Aurelien Foret <orelien@chez.com>
7 * Copyright (c) 2006 by Miklos Vajna <vmiklos@frugalware.org>
8 *
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License as published by
11 * the Free Software Foundation; either version 2 of the License, or
12 * (at your option) any later version.
13 *
14 * This program is distributed in the hope that it will be useful,
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 * GNU General Public License for more details.
18 *
19 * You should have received a copy of the GNU General Public License
20 * along with this program. If not, see <http://www.gnu.org/licenses/>.
21 */
22#ifndef ALPM_DEPS_H
23#define ALPM_DEPS_H
24
25#include "db.h"
26#include "sync.h"
27#include "package.h"
28#include "alpm.h"
29
30alpm_depend_t *_alpm_dep_dup(const alpm_depend_t *dep);
31alpm_list_t *_alpm_sortbydeps(alpm_handle_t *handle,
32 alpm_list_t *targets, alpm_list_t *ignore, int reverse);
33int _alpm_recursedeps(alpm_db_t *db, alpm_list_t **targs, int include_explicit);
34int _alpm_resolvedeps(alpm_handle_t *handle, alpm_list_t *localpkgs, alpm_pkg_t *pkg,
35 alpm_list_t *preferred, alpm_list_t **packages, alpm_list_t *remove,
36 alpm_list_t **data);
37int _alpm_depcmp_literal(alpm_pkg_t *pkg, alpm_depend_t *dep);
38int _alpm_depcmp_provides(alpm_depend_t *dep, alpm_list_t *provisions);
39int _alpm_depcmp(alpm_pkg_t *pkg, alpm_depend_t *dep);
40
41#endif /* ALPM_DEPS_H */
The basic dependency type.
Definition alpm.h:577
A doubly linked list.
Definition alpm_list.h:51