From e046298ce0d59330ad02ec907cbbc4924f9fb090 Mon Sep 17 00:00:00 2001 From: Jens Petersen Date: Mon, 15 Jul 2019 16:32:58 +0000 Subject: [PATCH] update deps generation for prof subpackages --- ghc-deps.sh | 38 +++++++++++++++++++------------------- ghc.attr | 2 +- 2 files changed, 20 insertions(+), 20 deletions(-) diff --git a/ghc-deps.sh b/ghc-deps.sh index cc9b346..67443eb 100755 --- a/ghc-deps.sh +++ b/ghc-deps.sh @@ -5,13 +5,13 @@ set +x -mode=$1 -pkgbasedir=$2 -pkgconfdir=$pkgbasedir/package.conf.d +MODE=$1 +PKGBASEDIR=$2 +PKGCONFDIR=$PKGBASEDIR/package.conf.d -ghc_pkg="/usr/lib/rpm/ghc-pkg-wrapper $pkgbasedir" +GHC_PKG="/usr/lib/rpm/ghc-pkg-wrapper $PKGBASEDIR" -case $mode in +case $MODE in --provides) field=id ;; --requires) field=depends ;; *) echo "$(basename $0): Need --provides or --requires" @@ -19,25 +19,25 @@ case $mode in ;; esac -ghc_ver=$(basename $pkgbasedir | sed -e s/ghc-//) - files=$(cat) for i in $files; do + meta="" case $i in - # exclude builtin_rts.conf - $pkgconfdir/*-*.conf) - name=$(grep "^name: " $i | sed -e "s/name: //") - ids=$($ghc_pkg field $name $field | sed -e "s/rts//" -e "s/bin-package-db-[^ ]\+//") - - for d in $ids; do - case $d in - *-*) echo "ghc-devel($d)" ;; - *) ;; - esac - done + */libHS*_p.a) + meta=prof ;; - *) + */libHS*.a) + meta=devel ;; esac + if [ -n "$meta" ]; then + pkgver=$(basename $(dirname $i)) + ids=$($GHC_PKG field $pkgver $field | sed -e "s/rts//" -e "s/bin-package-db-[^ ]\+//") + for d in $ids; do + case $d in + *-*) echo "ghc-${meta}($d)" ;; + esac + done + fi done diff --git a/ghc.attr b/ghc.attr index 7703f9e..ca391b6 100644 --- a/ghc.attr +++ b/ghc.attr @@ -1,3 +1,3 @@ %__ghc_provides %{_rpmconfigdir}/ghc-deps.sh --provides %{buildroot}%{ghclibdir} %__ghc_requires %{_rpmconfigdir}/ghc-deps.sh --requires %{buildroot}%{ghclibdir} -%__ghc_path ^%{ghclibdir}/package.conf.d/.*\.conf$ +%__ghc_path ^%{ghclibdir}/.*/libHS.*\.a$