This is the mail archive of the cygwin-apps@cygwin.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: PFC Aspell (was Re: spell and nano (was reply to cgf about gpl violation))


Ronald Landheer-Cieslak wrote:
OTOH, I'm more than happy to take care of the dictionary packages (at least for the languages I know)

aspell-dict-LN-<version> sound OK?
(in which LN is en, nl, fr or de, which are the only languages I speak)

Ronald,


Attached is a script I wrote for packaging the English dictionary. I wrote it while considering packaging the whole of Aspell, but I'm glad to see Gareth and you do it :-). It shouldn't be hard to make the script more generic to support multiple languages, and I'd be happy to work with you to get it into shape. If it doesn't look useful, that's fine too.

The script assumes it is in aspell-en-0.51-0-1/CYGWIN-PATCHES and that there's also an untarred version of the pristine sources in aspell-en-0.51-0. Something like the following would do it:

$ cd ~/src
$ tar xvjf /cygdrive/c/Archive/GNU/aspell/aspell-en-0.51-0.tar.bz2
$ mv aspell-en-0.51-0 aspell-en-0.51-0-1
$ tar xvjf /cygdrive/c/Archive/GNU/aspell/aspell-en-0.51-0.tar.bz2
$ mkdir aspell-en-0.51-0-1/CYGWIN-PATCHES
$ cp /tmp/aspell-en-build.sh aspell-en-0.51-0-1/CYGWIN-PATCHES/
$ cd aspell-en-0.51-0-1/CYGWIN-PATCHES/
$ ./aspell-en-build.sh

-- Andrew

P.S. My preference for dictionary package names is aspell-LN-<version> (i.e., matching the original package name), but if the general consensus is to use aspell-dict-LN-<version> I can go along with that.
#!/bin/bash
#
# aspell-en-build.sh
#
# Cygwin build script for GNU Aspell English dictionary
#
# Andrew M. Inggs, 26 March 2003

# ----------------------------------------------------------------------
# Configurable section
# ----------------------------------------------------------------------

PKGNAME="aspell-en"
VERSION="0.51-0"
RELEASE="1"
PKGEXT=".tar.bz2"	# in preparation for the move to .cyg

# ----------------------------------------------------------------------
# End of configurable section
# ----------------------------------------------------------------------

# INIT

fullver="${VERSION}-${RELEASE}"
fullname="${PKGNAME}-${fullver}"

patchdir="$(pwd)"
pushd ../..
topdir="$(pwd)"
srcdir="${topdir}/${fullname}"
builddir="${topdir}/${PKGNAME}-build"
pkgdir="${topdir}/${PKGNAME}-pkg"
spkgdir="${topdir}/${PKGNAME}-spkg"

# BUILD

if [ -d "${builddir}" ]
then
	rm -r "${builddir}"
fi
mkdir "${builddir}"

cd "${builddir}"
(cd "${srcdir}"; tar cf - *) | tar xvf -
./configure
make || exit 1

# INSTALL

cd "${builddir}"
pushd /
find usr etc var -print > /tmp/${PKGNAME}-find-preinstall
popd
make install || exit 1
pushd /
find usr etc var -print > /tmp/${PKGNAME}-find-postinstall
popd
cat /tmp/${PKGNAME}-find-preinstall /tmp/${PKGNAME}-find-postinstall \
	| sort | uniq -u > /tmp/${PKGNAME}-find-uniq
if [ -d "${pkgdir}" ]
then
	rm -r "${pkgdir}"
fi
mkdir -p "${pkgdir}"
cd "${pkgdir}"
(cd /; tar cf - -T /tmp/${PKGNAME}-find-uniq) | tar xvf -

cd "${topdir}"
#mkdir -p ${pkgdir}/usr/doc/Cygwin
#cp ${patchdir}/${PKGNAME}.README ${pkgdir}/usr/doc/Cygwin/
mkdir -p ${pkgdir}/usr/doc/${fullname}
for f in README Copyright doc/ChangeLog doc/SCOWL-README
do
	cp ${fullname}/${f} ${pkgdir}/usr/doc/${fullname}/
done

if [ -d "${spkgdir}" ]
then
	rm -r "${spkgdir}"
fi
mkdir -p "${spkgdir}/${fullname}"
cd "${spkgdir}/${fullname}"
(cd "${srcdir}"; tar cf - *) | tar xvf -
cd "${topdir}"
diff -uNrp "${PKGNAME}-${VERSION}" "${fullname}" \
	> "${spkgdir}/${fullname}.patch"

# PACKAGE

cd "${pkgdir}"
tar cvjf "${topdir}/${fullname}${PKGEXT}" *

cd "${spkgdir}"
tar cvjf "${topdir}/${fullname}-src${PKGEXT}" *

# CLEANUP (leave pkg and spkg dirs)

cd ${builddir}
make uninstall
#rm /tmp/${PKGNAME}-find-preinstall
#rm /tmp/${PKGNAME}-find-postinstall
#rm /tmp/${PKGNAME}-find-uniq
popd

# ----------------------------------------------------------------------
# End of file
# ----------------------------------------------------------------------

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]