Changed circular dependencies handler to skip only the offended dependencies.
But don't look very stable yet (see comments about alsa-lib and jdk). Not verified yet it all circular dependencies has been tracked.
This commit is contained in:
parent
7acf5caa4e
commit
2a3e0f048b
2 changed files with 61 additions and 44 deletions
|
@ -97,35 +97,10 @@ inline_doc
|
||||||
fi
|
fi
|
||||||
|
|
||||||
case $1 in
|
case $1 in
|
||||||
1 | 2 )
|
1 | 2 | 3 )
|
||||||
DEP_LEVEL=$1
|
DEP_LEVEL=$1
|
||||||
echo -e "\n\tUsing $DEP_LEVEL as dependencies level.\n"
|
echo -e "\n\tUsing $DEP_LEVEL as dependencies level.\n"
|
||||||
;;
|
;;
|
||||||
# Prevent circular dependencies when level 3
|
|
||||||
# cracklib-->python-->tk-->X-->linux-pam-->cracklib
|
|
||||||
# docbook-utils--> Optional dependencies are runtime only
|
|
||||||
# libxml2-->libxslt-->libxml2
|
|
||||||
# cyrus-sasl-->openldap-->cyrus-sasl
|
|
||||||
# alsa-lib-->doxygen-->graphviz-->jdk-->alsa-lib
|
|
||||||
# unixodbc-->qt-->unixodbc
|
|
||||||
# cups-->php-->sendmail-->espgs-->cups
|
|
||||||
# libexif-->graphviz-->php-->libexif
|
|
||||||
# esound-->aRts-->esound
|
|
||||||
# gimp-->imagemagick-->gimp
|
|
||||||
3 )
|
|
||||||
case $TARGET in
|
|
||||||
cracklib | docbook-utils | libxml2 | cyrus-sasl | alsa-lib | \
|
|
||||||
unixodbc | cups | libexif | esound | gimp )
|
|
||||||
DEP_LEVEL=2
|
|
||||||
echo -e "\n\t$TARGET have circular dependencies at level $1"
|
|
||||||
echo -e "\tUsing $DEP_LEVEL as dependencies level.\n"
|
|
||||||
;;
|
|
||||||
* )
|
|
||||||
DEP_LEVEL=$1
|
|
||||||
echo -e "\n\tUsing $DEP_LEVEL as dependencies level.\n"
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
;;
|
|
||||||
* )
|
* )
|
||||||
DEP_LEVEL=2
|
DEP_LEVEL=2
|
||||||
echo -e "\n\t$1 is not a valid dependencies level."
|
echo -e "\n\t$1 is not a valid dependencies level."
|
||||||
|
|
|
@ -173,13 +173,52 @@ inline_doc
|
||||||
|
|
||||||
#------------------
|
#------------------
|
||||||
echo -e "\tDEP for $PKG is $DEP" >> depure.txt
|
echo -e "\tDEP for $PKG is $DEP" >> depure.txt
|
||||||
|
# Prevent circular dependencies when level 3
|
||||||
case $DEP in
|
case $DEP in
|
||||||
# Circular dependencies at level 3
|
python )
|
||||||
cracklib | docbook-utils | libxml2 | cyrus-sasl | alsa-lib | \
|
# cracklib-->python-->tk-->X-->linux-pam-->cracklib
|
||||||
unixodbc | cups | libexif | esound | gimp )
|
[[ "$PKG" = "cracklib" ]] && continue
|
||||||
[[ "$DEP_LV" = "3" ]] && DEP_LV=2
|
;;
|
||||||
|
jadetex | perl-* | lynx | Links | w3m )
|
||||||
|
# Optional dependencies are runtime only
|
||||||
|
[[ "$PKG" = "docbook-utils" ]] && continue
|
||||||
|
;;
|
||||||
|
libxslt )
|
||||||
|
# libxml2-->libxslt-->libxml2
|
||||||
|
[[ "$PKG" = "libxml2" ]] && continue
|
||||||
|
;;
|
||||||
|
openldap | postgresql | $KBR5 )
|
||||||
|
# cyrus-sasl-->several-->cyrus-sasl
|
||||||
|
[[ "$PKG" = "cyrus-sasl" ]] && continue
|
||||||
|
;;
|
||||||
|
doxygen )
|
||||||
|
# alsa-lib-->doxygen-->graphviz-->jdk-->alsa-lib
|
||||||
|
# Commented out due that it bomb "jdk 3" Why??
|
||||||
|
#[[ "$PKG" = "alsa-lib" ]] && continue
|
||||||
|
# libexif-->doxygen-->graphviz-->php-->libexif
|
||||||
|
[[ "$PKG" = "libexif" ]] && continue
|
||||||
|
;;
|
||||||
|
qt )
|
||||||
|
# unixodbc-->qt-->unixodbc
|
||||||
|
[[ "$PKG" = "unixodbc" ]] && continue
|
||||||
|
;;
|
||||||
|
espgs )
|
||||||
|
# sendmail-->espgs-->cups-->php-->sendmail
|
||||||
|
# We should to use $MAIL_SERVER, when it actually work :-/
|
||||||
|
[[ "$PKG" = "sendmail" ]] && continue
|
||||||
|
;;
|
||||||
|
graphviz )
|
||||||
|
# libexif-->graphviz-->php-->libexif
|
||||||
|
[[ "$PKG" = "libexif" ]] && continue
|
||||||
|
;;
|
||||||
|
aRts )
|
||||||
|
# esound-->aRts-->esound
|
||||||
|
[[ "$PKG" = "esound" ]] && continue
|
||||||
|
;;
|
||||||
|
gimp )
|
||||||
|
# imagemagick-->gimp-->imagemagick
|
||||||
|
[[ "$PKG" = "imagemagick" ]] && continue
|
||||||
;;
|
;;
|
||||||
* ) DEP_LV=$DEP_LEVEL ;;
|
|
||||||
esac
|
esac
|
||||||
|
|
||||||
#------------------
|
#------------------
|
||||||
|
@ -203,6 +242,9 @@ inline_doc
|
||||||
# If not already created, create its dependencies list
|
# If not already created, create its dependencies list
|
||||||
if [[ ! -f dependencies/$DEP.dep ]] ; then
|
if [[ ! -f dependencies/$DEP.dep ]] ; then
|
||||||
case $DEP in
|
case $DEP in
|
||||||
|
alsa-lib ) ;; # Only one optional dependency and is recursive.
|
||||||
|
# When placed inside the circular dependencies handler
|
||||||
|
# some packages may bomb. But I don't know yet why
|
||||||
# Meta-packages at dependency level (ugly *.dep files, but work for now)
|
# Meta-packages at dependency level (ugly *.dep files, but work for now)
|
||||||
alsa ) # When dependency "alsa", use all alsa-* packages
|
alsa ) # When dependency "alsa", use all alsa-* packages
|
||||||
echo -e "alsa-oss\nalsa-firmware\nalsa-tools\nalsa-utils\n \
|
echo -e "alsa-oss\nalsa-firmware\nalsa-tools\nalsa-utils\n \
|
||||||
|
|
Reference in a new issue