Репозиторий Sisyphus
Последнее обновление: 1 октября 2023 | Пакетов: 18631 | Посещений: 37661132
en ru br
Репозитории ALT
S:1.4.7-alt1
5.1: 1-alt6
4.1: 1-alt4
www.altlinux.org/Changes

Группа :: Разработка/Haskell
Пакет: rpm-build-haskell

 Главная   Изменения   Спек   Патчи   Исходники   Загрузить   Gear   Bugs and FR  Repocop 

scripts-1/000075500000000000000000000000001206534345100127045ustar00rootroot00000000000000scripts-1/haskell.functions000064400000000000000000000010051206534345100162550ustar00rootroot00000000000000field()
{
local file="$1" field="$2"
awk -F: \
'/^[^ ]/ {run=0}
/^ / {if(run) print}
/^'$field':/ {print $2; run=1}' "$file" | cut -d' ' -f2-
}

list_files()
{
while IFS=$'\t' read f t; do
case "$f" in
*/usr/lib*/ghc-*/*-*/*.pkg |\
*/usr/lib*/ghc-*/*/*.package.conf |\
*/usr/lib*/ghc-*/package.conf.d/*.conf )
echo "$f";;
esac
done
}

list_files_prov()
{
while IFS=$'\t' read f t; do
case "$f" in
*/usr/lib*/ghc-*/package.conf.d/*.conf )
echo "$f";;
esac
done
}
scripts-1/haskell.prov000075500000000000000000000005751206534345100152510ustar00rootroot00000000000000#!/bin/sh -efu

. /usr/lib/rpm/functions
. /usr/lib/rpm/haskell.functions

HsProv()
{
local f="$1"; shift
local name=`field "$f" name`
local ver=`field "$f" version`
local id=`field "$f" id`
local ghcver=`echo "$f" | grep -o '/ghc-[0-9.]*/' | tr -d /-`
local hash=`echo "$id" | sed 's/.*-//'`

echo "$ghcver($id)"
echo "$ghcver($name) = $ver"
}

ArgvFileAction HsProv "$@"
scripts-1/haskell.prov.files000075500000000000000000000001031206534345100163350ustar00rootroot00000000000000#!/bin/sh -efu

. /usr/lib/rpm/haskell.functions

list_files_prov

scripts-1/haskell.req000075500000000000000000000013121206534345100150400ustar00rootroot00000000000000#!/bin/sh -efu

. /usr/lib/rpm/functions
. /usr/lib/rpm/haskell.functions

HsReq()
{
local f="$1"; shift
local name ver ghcver hash
ghcver=`echo "$f" | grep -o '/ghc-[0-9.]*/' | tr -d /-`

for dep in `field "$f" depends | tr -s ',[:space:]' ' '`; do
if [ -n "${dep##*-[0-9]*}" ]; then
# gtk2hs has dependencies like "base"
[ "$dep" = "builtin_ffi" ] && continue
[ "$dep" = "builtin_rts" ] && continue
echo "$ghcver($dep)"
else
name=${dep%-*}
ver=${name##*-}
hash=${dep##*-}
name=${name%-*}
echo "$ghcver($dep)"
[ "$name" = "builtin_ffi" ] && continue
[ "$name" = "builtin_rts" ] && continue
echo "$ghcver($name) = $ver"
fi
done
}

ArgvFileAction HsReq "$@" | sort -u
scripts-1/haskell.req.files000075500000000000000000000000751206534345100161460ustar00rootroot00000000000000#!/bin/sh -efu

. /usr/lib/rpm/haskell.functions

list_files
scripts-1/hs_gen_filelist.sh000075500000000000000000000030331206534345100164000ustar00rootroot00000000000000#!/bin/bash -e
#============================================================================#
# Create filelists for ghc module packaging #
#============================================================================#
# (C) Denis Smirnov <mithraen@freesource.info> http://mithraen.ru/ #
#============================================================================#
buildroot=$1
pkg_libdir=$2
listdir=$3
pkg_name=$4
version=$5
conf_file=$6

pushd $buildroot
# libdir would be not exists if package contains only library, without binaries
> $listdir/$pkg_name-files.prof
> $listdir/$pkg_name-files.nonprof
if [ -d .$pkg_libdir ]; then
find .$pkg_libdir \( -name '*_p.a' -o -name '*.p_hi' \) | sed s/^.// >> $listdir/$pkg_name-files.prof
find .$pkg_libdir -type d | sed 's/^./%dir /' >> $listdir/$pkg_name-files.nonprof
find .$pkg_libdir ! \( -type d -o -name '*_p.a' -o -name '*.p_hi' \) | sed s/^.// >> $listdir/$pkg_name-files.nonprof
fi
cat $listdir/$pkg_name-files.prof >> $listdir/$pkg_name-files.nonprof
if [ -f .$conf_file ]; then
echo .$conf_file >> $listdir/$pkg_name-files.nonprof
fi
# find .$pkg_libdir
#sed 's,^/,%exclude /,' $listdir/$pkg_name-files.prof >> $listdir/$pkg_name-files.nonprof
(
cat $listdir/$pkg_name-files.nonprof
find ./usr/bin -type f ||:
find ./usr/share/$pkg_name-$version ||:
find ./usr/share/doc/$pkg_name-$version ||:
) \
| sed 's/^\.//' \
> $listdir/$pkg_name-files.all
popd
 
дизайн и разработка: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
текущий майнтейнер: Michael Shigorin