aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUlrich Müller <ulm@gentoo.org>2009-04-28 09:40:31 +0000
committerUlrich Müller <ulm@gentoo.org>2009-04-28 09:40:31 +0000
commitfcb7c02fe2cb861a9518c76cadd23c9d88b31e7d (patch)
tree58913aa6b3f2f1cc8a27a289d233d502e76e8154
parentDon't call portageq directly, use generic has_version function instead. (diff)
downloadeselect-fcb7c02fe2cb861a9518c76cadd23c9d88b31e7d.tar.gz
eselect-fcb7c02fe2cb861a9518c76cadd23c9d88b31e7d.tar.bz2
eselect-fcb7c02fe2cb861a9518c76cadd23c9d88b31e7d.zip
Add --with-pm option for configuring the preferred package manager.
svn path=/trunk/; revision=513
-rw-r--r--ChangeLog9
-rw-r--r--configure.ac13
-rw-r--r--libs/Makefile.am1
-rw-r--r--libs/package-manager.bash.in21
4 files changed, 22 insertions, 22 deletions
diff --git a/ChangeLog b/ChangeLog
index 17a6bae..01612ba 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2009-04-28 Ulrich Mueller <ulm@gentoo.org>
+
+ * configure.ac: Add --with-pm option for configuring the preferred
+ package manager. Supply a default path for portageq.
+ * libs/Makefile.am (dosed): Substitute PACKAGE_MANAGER.
+ * libs/package-manager.bash.in (package-manager): Return package
+ manager chosen at configure time. Overriding is possible by
+ environment variable ESELECT_PACKAGE_MANAGER.
+
2009-04-27 Ulrich Mueller <ulm@gentoo.org>
* modules/opengl.eselect (check_version): Don't call portageq
diff --git a/configure.ac b/configure.ac
index 36e5f88..9fe8078 100644
--- a/configure.ac
+++ b/configure.ac
@@ -22,7 +22,7 @@ if test x$SED = "x" ; then
AC_MSG_ERROR([GNU sed is required])
fi
-AC_PATH_PROG(PORTAGEQ, portageq)
+AC_PATH_PROG(PORTAGEQ, portageq, /usr/bin/portageq)
AC_PATH_PROG(READLINK, greadlink)
if test x$CANONICALISE = "x" ; then
@@ -57,9 +57,18 @@ if test x$RST2HTML = "x" ; then
AC_PATH_PROG(RST2HTML, rst2html.py)
fi
+AC_MSG_CHECKING([what package manager we shall use])
+AC_ARG_WITH(pm, [AS_HELP_STRING([--with-pm=PM], [use package manager PM])],
+ [], [withval=portage])
+AS_CASE([x$withval], xportage,, xpaludis,,
+ [AC_MSG_ERROR([package manager "$withval" not known])])
+AC_SUBST(PACKAGE_MANAGER, [$withval])
+AC_MSG_RESULT([$PACKAGE_MANAGER])
+
AC_MSG_CHECKING([whether dodgy modules should be installed])
AC_ARG_ENABLE(dodgy_modules,
- [ --enable-dodgy-modules Enable experimental and incomplete modules],
+ [AS_HELP_STRING([--enable-dodgy-modules],
+ [enable experimental and incomplete modules])]
if test x$enableval = "xyes" ; then
DODGY_MODULES="yes"
else
diff --git a/libs/Makefile.am b/libs/Makefile.am
index 4f3a6a3..9082589 100644
--- a/libs/Makefile.am
+++ b/libs/Makefile.am
@@ -32,6 +32,7 @@ EXTRA_DIST = \
dosed = @SED@ \
-e 's,\@SED\@,@SED@,g' \
+ -e 's,\@PACKAGE_MANAGER\@,@PACKAGE_MANAGER@,g' \
-e 's,\@PORTAGEQ\@,@PORTAGEQ@,g' \
-e 's,\@CANONICALISE\@,@CANONICALISE@,g'
diff --git a/libs/package-manager.bash.in b/libs/package-manager.bash.in
index 0d22493..2a8ba7a 100644
--- a/libs/package-manager.bash.in
+++ b/libs/package-manager.bash.in
@@ -153,26 +153,7 @@ get_news_dir_name() {
# package-manager PRIVATE
# Return the package manager we're going to use.
package-manager() {
- local manager
-
- if [[ -n ${ESELECT_PACKAGE_MANAGER} ]] ; then
- echo "${ESELECT_PACKAGE_MANAGER}"
- return
- fi
-
- # Prefer paludis for now as portage is always installed
- # TODO: Add an option to make it selectable by the user
- # TODO: Support Pkgcore
- if $(paludis_command) --list-repositories &> /dev/null ; then
- manager="paludis"
- else
- manager="portage"
- fi
-
- echo ${manager}
- # caching doesn't really work: we are typically called with
- # command substitution, i.e. in a subshell
- ESELECT_PACKAGE_MANAGER=${manager}
+ echo "${ESELECT_PACKAGE_MANAGER:-@PACKAGE_MANAGER@}"
}
# vim: set sw=4 et sts=4 tw=80 :