Build runghc with Cabal
authorIan Lynagh <igloo@earth.li>
Fri, 18 Jul 2008 16:53:17 +0000 (16:53 +0000)
committerIan Lynagh <igloo@earth.li>
Fri, 18 Jul 2008 16:53:17 +0000 (16:53 +0000)
utils/Makefile
utils/runghc/Makefile
utils/runghc/runghc.cabal [new file with mode: 0644]

index e101e50..ea6f904 100644 (file)
@@ -3,13 +3,13 @@ include $(TOP)/mk/boilerplate.mk
 
 ifeq "$(DOING_BIN_DIST)" "YES"
 # We're doing a binary-dist, descend into a subset of the dirs.
-SUBDIRS = mkdirhier hp2ps parallel unlit runghc hpc pwd
+SUBDIRS = mkdirhier hp2ps parallel unlit hpc pwd
 else
 ifeq "$(BootingFromHc)" "YES"
 SUBDIRS = mkdependC mkdirhier runstdtest genapply genprimopcode unlit
 else
 SUBDIRS = mkdependC mkdirhier runstdtest hp2ps \
-         parallel unlit genprimopcode genapply runghc hpc pwd
+         parallel unlit genprimopcode genapply hpc pwd
 endif
 ifneq "$(TARGETPLATFORM)" "i386-unknown-mingw32"
 # lndir doesn't build on Windows
@@ -55,7 +55,7 @@ endif
 
 WITH_BOOTSTRAPPING_COMPILER = installPackage ghc-pkg hsc2hs
 
-WITH_STAGE1 = installPackage ghc-pkg hasktags
+WITH_STAGE1 = installPackage ghc-pkg hasktags runghc
 ifneq "$(NO_INSTALL_HSC2HS)" "YES"
 WITH_STAGE1 += hsc2hs
 endif
index 54245a3..37e2a1d 100644 (file)
@@ -1,49 +1,7 @@
+
 TOP=../..
 include $(TOP)/mk/boilerplate.mk
+include $(TOP)/mk/cabal.mk
 
-# Beyond stage 1, honour any Mac OS X depolyment target options.  If we use 
-# these options in stage 1 we get a linker error if the bootstrap compiler is
-#  for a more recent OS version
-ifeq "$(stage)" "2"
-SRC_CC_OPTS += $(MACOSX_DEPLOYMENT_CC_OPTS)
-SRC_HC_OPTS += $(addprefix -optc, $(MACOSX_DEPLOYMENT_CC_OPTS))
-SRC_LD_OPTS += $(addprefix -optl, $(MACOSX_DEPLOYMENT_LD_OPTS))
-endif
-
-ifeq "$(ghc_ge_605)" "NO"
-SRC_HC_OPTS += -cpp
-endif
-
-# We have two version: the inplace version compiled by the bootstrap compiler
-#   and the install version compiled by the stage 1 compiler
-ifeq "$(stage)" "2"
-HS_PROG           = runghc$(exeext)
-else
-HS_PROG           = runghc-inplace$(exeext)
-endif
-INSTALL_PROGS   += $(HS_PROG)
-
-UseGhcForCc = YES
-SRC_MKDEPENDC_OPTS += -I$(GHC_INCLUDE_DIR)
-
-SRC_HC_OPTS += -Wall
-
-RUNHASKELL_PROG = runhaskell$(exeext)
-all :: $(RUNHASKELL_PROG)
-
-$(RUNHASKELL_PROG) : $(HS_PROG)
-       $(CP) $< $(RUNHASKELL_PROG)
-
-MOSTLY_CLEAN_FILES += $(RUNHASKELL_PROG)
-
-ifneq "$(NO_INSTALL_RUNHASKELL)" "YES"
-INSTALL_PROGS += $(RUNHASKELL_PROG)
-endif
-
-binary-dist::
-       $(INSTALL_DIR)                $(BIN_DIST_DIR)/utils/runghc
-       $(INSTALL_DATA)    Makefile   $(BIN_DIST_DIR)/utils/runghc/
-       $(INSTALL_PROGRAM) $(HS_PROG) $(BIN_DIST_DIR)/utils/runghc/
-       $(INSTALL_PROGRAM) $(RUNHASKELL_PROG) $(BIN_DIST_DIR)/utils/runghc/
+# XXX Need to make runhaskell somehow
 
-include $(TOP)/mk/target.mk
diff --git a/utils/runghc/runghc.cabal b/utils/runghc/runghc.cabal
new file mode 100644 (file)
index 0000000..17ed923
--- /dev/null
@@ -0,0 +1,28 @@
+Name: runghc
+-- XXX version number:
+Version: 0.67
+Copyright: XXX
+License: BSD3
+-- XXX License-File: LICENSE
+Author: XXX
+Maintainer: XXX
+Synopsis: XXX
+Description:
+       XXX
+Category: Development
+build-type: Simple
+cabal-version: >=1.2
+
+Flag base3
+    Description: Choose the new smaller, split-up base package.
+
+Executable runghc
+    Main-Is: runghc.hs
+
+    if flag(base3)
+        Build-Depends: base       >= 3   && < 4,
+                       directory  >= 1   && < 1.1,
+                       process    >= 1   && < 1.1
+    else
+        Build-Depends: base < 3
+