New dependency sorting algorithm made in 2 days.

This algorithm works for all packages currently usable on xbps.
Previous code didn't take into account the correct order between
indirect and direct deps.

--HG--
extra : convert_revision : c49a20ce300e6e9dfa565325b40745b5a78b78ed
This commit is contained in:
Juan RP 2009-02-12 17:30:38 +01:00
parent 3b419a365e
commit 28cfeea6d1
6 changed files with 403 additions and 231 deletions

View file

@ -27,16 +27,19 @@
#define _XBPS_INSTALL_H_
/* From lib/install.c, lib/depends.c and lib/unpack.c */
int xbps_install_pkg_deps(prop_dictionary_t, const char *);
int xbps_install_binary_pkg(const char *, const char *);
int xbps_install_binary_pkg_fini(prop_dictionary_t, prop_dictionary_t,
const char *);
int xbps_register_pkg(prop_dictionary_t, const char *, const char *,
const char *);
int xbps_unpack_binary_pkg(prop_dictionary_t, prop_dictionary_t,
const char *,
void (*cb_print)(prop_dictionary_t));
int xbps_update_pkg_requiredby(prop_array_t, prop_dictionary_t);
int xbps_find_deps_in_pkg(prop_dictionary_t, prop_dictionary_t);
int xbps_install_pkg_deps(prop_dictionary_t, const char *);
int xbps_install_binary_pkg(const char *, const char *);
int xbps_install_binary_pkg_fini(prop_dictionary_t, prop_dictionary_t,
const char *);
int xbps_register_pkg(prop_dictionary_t, const char *, const char *,
const char *);
int xbps_unpack_binary_pkg(prop_dictionary_t, prop_dictionary_t,
const char *,
void (*cb_print)(prop_dictionary_t));
int xbps_update_pkg_requiredby(prop_array_t, prop_dictionary_t);
int xbps_find_deps_in_pkg(prop_dictionary_t, prop_dictionary_t);
/* From lib/sortdeps.c */
int xbps_sort_pkg_deps(prop_dictionary_t);
#endif /* !_XBPS_INSTALL_H_ */