~singpolyma/haskell-libxml-sax

d0cc8be3af255a27d1c706fd9cc3d05ef476bf56 — John Millikin 11 years ago 8d66603
Move sources into lib/ and cbits/ directories. Remove old scripts/ dir.
6 files changed, 5 insertions(+), 85 deletions(-)

R hslibxml-shim.c => cbits/hslibxml-shim.c
R hslibxml-shim.h => cbits/hslibxml-shim.h
R Text/XML/LibXML/SAX.hs => lib/Text/XML/LibXML/SAX.hs
M libxml-sax.cabal
D scripts/common.bash
D scripts/run-tests
R hslibxml-shim.c => cbits/hslibxml-shim.c +0 -0
R hslibxml-shim.h => cbits/hslibxml-shim.h +0 -0
R Text/XML/LibXML/SAX.hs => lib/Text/XML/LibXML/SAX.hs +0 -0
M libxml-sax.cabal => libxml-sax.cabal +5 -2
@@ 14,7 14,9 @@ bug-reports: mailto:jmillikin@gmail.com
synopsis: Bindings for the libXML2 SAX interface
description:

extra-source-files: hslibxml-shim.h
extra-source-files:
  cbits/hslibxml-shim.c
  cbits/hslibxml-shim.h

source-repository head
  type: bazaar


@@ 26,6 28,7 @@ source-repository this
  tag: haskell-libxml_0.7.3

library
  hs-source-dirs: lib
  ghc-options: -Wall -O2
  cc-options: -Wall



@@ 38,7 41,7 @@ library
  exposed-modules:
    Text.XML.LibXML.SAX

  c-sources: hslibxml-shim.c
  c-sources: cbits/hslibxml-shim.c

  extra-libraries: xml2
  pkgconfig-depends: libxml-2.0

D scripts/common.bash => scripts/common.bash +0 -63
@@ 1,63 0,0 @@
PATH="$PATH:$PWD/cabal-dev/bin/"

VERSION=$(awk '/^version:/{print $2}' libxml-sax.cabal)

CABAL_DEV=$(which cabal-dev)
ANANSI=$(which anansi)
XELATEX=$(which xelatex)
XZ=$(which xz)

require_cabal_dev()
{
	if [ -z "$CABAL_DEV" ]; then
		echo "Can't find 'cabal-dev' executable; make sure it exists on your "'$PATH'
		echo "Cowardly refusing to fuck with the global package database"
		exit 1
	fi
}

require_anansi()
{
	if [ -z "$ANANSI" ]; then
		echo "Can't find 'anansi' executable; running '$CABAL_DEV install anansi'"
		require_cabal_dev
		$CABAL_DEV install anansi &> /dev/null
		if [ "$?" -ne "0" ]; then
			echo "Installation failed; please install Anansi manually somehow"
			exit 1
		fi
		ANANSI=$(which anansi)
		echo "Success; anansi = $ANANSI"
	fi
}

require_xelatex()
{
	if [ -z "$XELATEX" ]; then
		echo "Can't find 'xelatex' executable; make sure it exists on your "'$PATH'
		exit 1
	fi
}

make_pdf()
{
	require_anansi
	require_xelatex
	
	rm -f *.{aux,tex,idx,log,out,toc,pdf}
	$ANANSI -w -l latex-noweb -o libxml-sax.tex libxml-sax.anansi || exit 1
	$XELATEX libxml-sax.tex > /dev/null || exit 1
	$XELATEX libxml-sax.tex > /dev/null || exit 1
	rm -f *.{aux,tex,idx,log,out,toc}
	mv libxml-sax.pdf "libxml-sax_$VERSION.pdf"
}

clean_dev_install()
{
	# require_anansi
	require_cabal_dev
	
	rm -rf hs dist
	# $ANANSI -o hs libxml-sax.anansi || exit 1
	$CABAL_DEV install || exit 1
}

D scripts/run-tests => scripts/run-tests +0 -20
@@ 1,20 0,0 @@
#!/bin/bash
if [ ! -f 'libxml-sax.cabal' ]; then
	echo -n "Can't find libxml-sax.cabal; please run this script as"
	echo -n " ./scripts/run-tests from within the libxml-sax source"
	echo " directory"
	exit 1
fi

. scripts/common.bash

require_cabal_dev

clean_dev_install

pushd tests
rm -rf dist
$CABAL_DEV -s ../cabal-dev install || exit 1
popd

cabal-dev/bin/libxml-sax_tests