Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Tranform info an fptools-ready package

The fptools version of this package needs different Makefiles, so add
them and remove the original GNUmakefiles.
  • Loading branch information...
commit afeac0a0dbf9f29408abca2b40d575930f65dec2 1 parent 9441738
Simon Marlow authored
View
180 GNUmakefile
@@ -1,180 +0,0 @@
-CABALVERSION=1.1.4
-KIND=rc
-#KIND=latest
-GHCFLAGS= --make -Wall -fno-warn-unused-matches -cpp
-# later: -Wall
-PREF=/usr/local
-USER_FLAG =
-GHCPKGFLAGS =
-#HCBASE=/tmp/ghc/bin/
-HCBASE=/usr/bin/
-HC=$(HCBASE)ghc
-HC_PKG=$(HCBASE)/ghc-pkg
-# Comment out this line if your system doesn't have System.Posix.
-ISPOSIX=-DHAVE_UNIX_PACKAGE
-
-ifdef user
-USER_FLAG = --user
-GHCPKGFLAGS = -f ~/.ghc-packages
-GHCFLAGS += -package-conf ~/.ghc-packages
-endif
-
-# the cabal tarball...
-CABALBALL=cabal.tar.gz
-
-all: moduleTest
-
-# build the library itself
-
-setup::
- mkdir -p dist/tmp
- $(HC) $(GHCFLAGS) -i. -odir dist/tmp -hidir dist/tmp Setup.lhs -o setup
-
-Setup-nhc:
- hmake -nhc98 -package base -prelude Setup
-
-config: setup
- ./setup configure --ghc --prefix=$(PREF)
-
-build: build-stamp
-build-stamp: config
- ./setup build
-
-install: build-stamp
- ./setup install $(USER_FLAG)
- cd cabal-install && mkdir -p dist/tmp && $(HC) $(GHCFLAGS) -i. -odir dist/tmp -hidir dist/tmp Setup.lhs -o setup && ./setup configure --ghc --prefix=$(PREF) && ./setup build && ./setup install
-
-hugsbootstrap:
- rm -rf dist/tmp dist/hugs
- mkdir -p dist/tmp
- mkdir dist/hugs
- cp -r Distribution dist/tmp
- hugs-package dist/tmp dist/hugs
- cp Setup.lhs Cabal.cabal dist/hugs
-
-hugsinstall: hugsbootstrap
- cd dist/hugs && ./Setup.lhs configure --hugs
- cd dist/hugs && ./Setup.lhs build
- cd dist/hugs && ./Setup.lhs install
-
-haddock: setup
- ./setup configure
- ./setup haddock
-
-clean-doc:
- cd doc && make clean
-
-doc: haddock
- docbook2html doc/Cabal.xml --output doc/users-guide
-
-clean: clean-cabal clean-hunit clean-test clean-doc
-
-clean-cabal:
- -rm -f Distribution/*.o Distribution/*.hi
- -rm -f Distribution/Simple/*.o Distribution/Simple/*.hi
- -rm -f Compat/*.o Compat/*.hi
- -rm -f darcs* out.build *~ semantic.cache* x*.html
- -rm -f library-infrastructure--darcs.tar.gz
- -rm -rf setup *.o *.hi moduleTest dist installed-pkg-config
- -rm -f build-stamp
- -rm -rf dist/hugs
-
-clean-hunit:
- -rm -f hunit-stamp hunitInstall-stamp
- cd tests/HUnit-1.0 && make clean
-
-clean-test:
- cd tests/A && make clean
- cd tests/wash2hs && make clean
-
-remove: remove-cabal remove-hunit
-remove-cabal:
- -$(HC_PKG) $(GHCPKGFLAGS) -r Cabal
- -rm -rf $(PREF)/lib/Cabal-0.1
-remove-hunit:
- -$(HC_PKG) $(GHCPKGFLAGS) -r HUnit
- -rm -rf $(PREF)/lib/HUnit-1.0
-
-# dependencies (included):
-
-hunit: hunit-stamp
-hunit-stamp:
- cd tests/HUnit-1.0 && make && ./setup configure --prefix=$(PREF) && ./setup build
- touch $@
-
-hunitInstall: hunitInstall-stamp
-hunitInstall-stamp: hunit-stamp
- cd tests/HUnit-1.0 && ./setup install $(USER_FLAG)
- touch $@
-
-# testing...
-
-moduleTest:
- mkdir -p dist/debug
- $(HC) $(GHCFLAGS) $(ISPOSIX) -DDEBUG -odir dist/debug -hidir dist/debug -idist/debug/:src:tests/HUnit-1.0/src tests/ModuleTest.hs -o moduleTest
-
-tests: moduleTest clean
- cd tests/A && make clean
- cd tests/HUnit-1.0 && make clean
- cd tests/A && make
- cd tests/HUnit-1.0 && make
-
-check:
- rm -f moduleTest
- make moduleTest
- ./moduleTest
-
-# distribution...
-
-pushall:
- darcs push --all ijones@cvs.haskell.org:/home/darcs/cabal
-
-
-pushdist: pushall dist
- scp $(TMPDISTLOC)/cabal.tar.gz ijones@www.haskell.org:~/cabal/cabal-code.tgz
-# PUSH ELSEWHERE: scp changelog ijones@www.haskell.org:~/cabal/release/changelog
-# PUSH ELSEWHERE: scp releaseNotes ijones@www.haskell.org:~/cabal/release/notes
-# rm -f /tmp/cabal-code.tgz
-
-deb: dist
- cd $(TMPDISTLOC) && ln -s $(CABALBALL) haskell-cabal_$(CABALVERSION).orig.tar.gz
- cd $(TMPDISTLOC) && tar -zxvf $(CABALBALL)
- mv $(TMPDISTLOC)/cabal $(TMPDISTLOC)/haskell-cabal-$(CABALVERSION)
- cd $(TMPDISTLOC)/haskell-cabal-$(CABALVERSION) && debuild
-
-$(CABALBALL):
- darcs record
- rm -rf /tmp/cabal* /tmp/Cabal*
- rm -rf $(TMPDISTLOC)
- darcs dist
- mv Cabal.tar.gz $(CABALBALL)
-
-TMPDISTLOC=/tmp/cabaldist
-
-# after this command, there will be cabal.tar.gz in $(TMPDISTLOC),
-# which will have built docs, haddock, and source code.
-
-dist: haddock $(CABALBALL)
- rm -rf $(TMPDISTLOC)
- mkdir $(TMPDISTLOC)
- mv $(CABALBALL) $(TMPDISTLOC)
- cd $(TMPDISTLOC) && tar -zxvf $(CABALBALL) && mv Cabal cabal
- #mkdir $(TMPDISTLOC)/cabal/doc
- make doc
- cp -r dist/doc/html $(TMPDISTLOC)/cabal/doc/API
- cp -r doc/users-guide $(TMPDISTLOC)/cabal/doc/users-guide
- cd ~/usr/doc/haskell/haskell-report/packages && docbook2html -o /tmp/pkg-spec-html pkg-spec.sgml && docbook2pdf pkg-spec.sgml -o /tmp
- cp -r /tmp/pkg-spec{-html,.pdf} $(TMPDISTLOC)/cabal/doc
-
- cd $(TMPDISTLOC) && tar -zcvf $(CABALBALL) cabal
-# rm -f /tmp/Cabal.tar.gz
-# rm -rf /tmp/cabal
-
-release: dist
- mkdir $(TMPDISTLOC)/release
- cp $(TMPDISTLOC)/cabal/releaseNotes $(TMPDISTLOC)/release
- cp $(TMPDISTLOC)/cabal/changelog $(TMPDISTLOC)/release
- cp -r $(TMPDISTLOC)/cabal/doc $(TMPDISTLOC)/release
- cp $(TMPDISTLOC)/cabal.tar.gz $(TMPDISTLOC)/release/cabal-$(CABALVERSION).tar.gz
- scp -r $(TMPDISTLOC)/release ijones@www.haskell.org:~/cabal/release/cabal-$(CABALVERSION)
- ssh ijones@www.haskell.org 'cd ~/cabal/release && rm -f $(KIND) && ln -s cabal-$(CABALVERSION) $(KIND)'
View
24 Makefile
@@ -0,0 +1,24 @@
+TOP=..
+include $(TOP)/mk/boilerplate.mk
+
+SUBDIRS = doc
+
+ALL_DIRS = \
+ Distribution \
+ Distribution/Simple \
+ Distribution/PreProcess \
+ Distribution/Compat \
+ Language/Haskell
+
+EXCLUDED_SRCS = DefaultSetup.lhs
+
+PACKAGE = Cabal
+VERSION = 1.0
+
+PACKAGE_DEPS = base
+
+SRC_HADDOCK_OPTS += -t "Haskell Core Libraries (Cabal package)"
+
+SRC_HC_OPTS += -cpp
+
+include $(TOP)/mk/target.mk
View
7 Makefile.inc
@@ -0,0 +1,7 @@
+ifeq "" "${MKDIR}"
+MKDIR:=$(shell pwd)
+#MKDIR:=$(PWD)
+else
+MKDIR:=$(patsubst %/$(notdir ${MKDIR}),%, ${MKDIR})
+endif
+include ${MKDIR}/Makefile.inc
View
46 Makefile.nhc98
@@ -0,0 +1,46 @@
+# Hey Emacs, this is a -*- makefile -*- !
+
+THISPKG = Cabal
+SEARCH = -package base
+EXTRA_H_FLAGS = -K4M
+EXTRA_HBC_FLAGS = -H80M -A4M
+
+SRCS = \
+ Distribution/Extension.hs \
+ Distribution/GetOpt.hs \
+ Distribution/InstalledPackageInfo.hs \
+ Distribution/License.hs \
+ Distribution/Make.hs \
+ Distribution/Package.hs \
+ Distribution/PackageDescription.hs \
+ Distribution/ParseUtils.hs \
+ Distribution/PreProcess.hs \
+ Distribution/Setup.hs \
+ Distribution/Simple.hs \
+ Distribution/Version.hs \
+ \
+ Distribution/Compat/Directory.hs \
+ Distribution/Compat/Exception.hs \
+ Distribution/Compat/FilePath.hs \
+ Distribution/Compat/RawSystem.hs \
+ Distribution/Compat/ReadP.hs \
+ \
+ Distribution/PreProcess/Unlit.hs \
+ \
+ Distribution/Simple/Build.hs \
+ Distribution/Simple/Configure.hs \
+ Distribution/Simple/GHCPackageConfig.hs \
+ Distribution/Simple/Install.hs \
+ Distribution/Simple/LocalBuildInfo.hs \
+ Distribution/Simple/Register.hs \
+ Distribution/Simple/SrcDist.hs \
+ Distribution/Simple/Utils.hs \
+
+
+# Here are the main rules.
+include ../Makefile.common
+
+# Here are any extra dependencies.
+
+# C-files dependencies.
+
View
5 doc/GNUmakefile
@@ -1,5 +0,0 @@
-all: Cabal.xml
- docbook2pdf Cabal.xml
-
-clean:
- rm -fr *~ API users-guide Cabal.pdf Cabal.dvi semantic.cache
View
7 doc/Makefile
@@ -0,0 +1,7 @@
+TOP = ../..
+include $(TOP)/mk/boilerplate.mk
+
+XML_DOC = Cabal
+INSTALL_XML_DOC = $(XML_DOC)
+
+include $(TOP)/mk/target.mk
View
7 prologue.txt
@@ -0,0 +1,7 @@
+The Haskell Cabal is the Common Architecture for Building Applications
+and Libraries. It is a framework which defines a common interface for
+authors to more easily build their applications in a portable way. The
+Haskell Cabal is meant to be a part of a larger infrastructure for
+distributing, organizing, and cataloging Haskell Libraries and
+Tools. For more information, please see:
+<http://www.haskell.org/cabal/>.
Please sign in to comment.
Something went wrong with that request. Please try again.