[project @ 2000-05-31 00:55:10 by chak]
[ghc-hetmet.git] / mk / config.mk.in
index 2c3a292..3afa25d 100644 (file)
@@ -1,4 +1,4 @@
-#
+#                                                               -*-makefile-*-
 # @configure_input@
 #
 ################################################################################
@@ -86,7 +86,7 @@ HostVendor_CPP                        = @HostVendor_CPP@
 #
 LeadingUnderscore=@LeadingUnderscore@
 
-# Pin a suffix on executables? If so, what. (cygwin32 only).
+# Pin a suffix on executables? If so, what (Windows only).
 exeext=@exeext@
 
 ################################################################################
@@ -110,7 +110,12 @@ exeext=@exeext@
 #              * ghc next
 #              then it's up to you
 
+ifeq "$(GhcWithHscBuiltViaC)" "YES"
+# need hslibs/lang first if we're bootstrapping
+ProjectsToBuild   = glafp-utils hslibs ghc
+else
 ProjectsToBuild   = glafp-utils ghc hslibs
+endif
 #
 # Make a distinction between building and installing
 #
@@ -147,7 +152,7 @@ IncludeTestDirsInBuild=NO
 #                           HC_ROJEMO_NHC
 #                           HC_UNSPECIFIED
 
-WithGhcHc = $(HC)
+WithGhcHc = @WithHc@
 
 # Variable which is set to the version number of the $(WithGhcHc) we're using.
 # Not currently used, but might come in handy sometime soon.
@@ -168,7 +173,7 @@ GhcCompilerWays=
 #
 #      -dcore-lint     check the types after every pass of the compiler;
 #                      a pretty strong internal check
-GhcHcOpts=
+GhcHcOpts=-O
 
 # GhcWithHscBuiltViaC - build GHC compiler proper (\`hsc') from .hc files?
 GhcWithHscBuiltViaC=@BootingFromHc@
@@ -209,21 +214,24 @@ GhcLibWays=p
 endif
 
 # Option flags to pass to GHC when it's compiling prelude modules
+# *and* standard library modules (std) *and* modules in hslibs
 # Typically these are things like -O or -dcore-lint
 # The ones that are *essential* are wired into ghc/lib/Makefile
 #
 #      -O is pretty desirable, otherwise no inlining of prelude
 #              things (incl "+") happens when compiling with this compiler
 
-ifeq "$(GhcWithHscBuiltViaC)" "YES"
 GhcLibHcOpts=-O
-else
-GhcLibHcOpts=-O -split-objs -odir $*
-endif
 
 # Win32 only: Enable the RTS and libraries to be built as DLLs
-#
+# Don't split object files for libs if we're building DLLs
 EnableWin32DLLs=@EnableWin32DLLs@
+ifeq "$(EnableWin32DLLs)" "YES"
+SplitObjs=NO
+else
+SplitObjs=YES
+endif
+
 
 # Strip local symbols from libraries?  This can make the libraries smaller,
 # but makes debugging somewhat more difficult.  Doesn't work with all ld's.
@@ -260,17 +268,22 @@ GhcRtsCcOpts=-O2 -optc-fomit-frame-pointer
 HsLibsFor      = ghc
 
 # hslibs for GHC also uses the following variables (defined above):
-#   GhcLibWays, GhcLibHcOpts, EnableWin32DLLs, StripLibraries
+#   GhcLibWays, GhcLibHcOpts, GhcLibToolsHcOpts, EnableWin32DLLs, StripLibraries
+
+# Haskell compiler options for tools in hslibs
+GhcLibToolsHcOpts=-O
 
 # Build the Haskell Readline bindings?
 #
-GhcLibsWithReadline=NO
-#
+GhcLibsWithReadline=@HaveReadlineHeaders@
+
+# Libraries needed for linking with readline
+LibsReadline=@LibsReadline@
+
 # Include path to readline.h
 # (no path == in standard include path)
 #
 ReadlineIncludePath=
-HaveLibReadline=@HaveLibReadline@
 
 ################################################################################
 #
@@ -281,7 +294,7 @@ HaveLibReadline=@HaveLibReadline@
 ################################################################################
 
 # The compiler you'd like to use to compile Happy
-WithHappyHc = $(HC)
+WithHappyHc = @WithHc@
 
 # HappyHcOpts gives the flags to pass to the Haskell compiler used
 #            to compile the Happy sources with.
@@ -347,6 +360,11 @@ NoFibHcOpts = -O
 #
 ################################################################################
 
+# Directory used by GHC (and possibly other tools) for storing
+# temporary files.  If your /tmp isn't big enough, either override
+# this in build.mk or set your environment variable "TMPDIR" to point
+# to somewhere with more space.  (TMPDIR=. is a good choice).
+
 TMPDIR                 = /tmp
 
 # FPTOOLS_TOP: the top of the fptools hierarchy, absolute path.
@@ -358,19 +376,20 @@ FPTOOLS_TOP_ABS           = @hardtop@
 # but since the configure script has them on offer while
 # passing through, we might as well set them.
 
-prefix                  = @prefix@
-exec_prefix             = @exec_prefix@
-bindir                  = @bindir@
-#UNUSED, see below: libexecdir              = @libexecdir@
-datadir                 = @datadir@
-#sysconfdir              = @datadir@
-#sharedstatedir          = @sharedstatedir@
-#localstatedir           = @localstatedir@
-libdir                  = @libdir@
-infodir                        = @infodir@
-includedir              = @includedir@
-oldincludedir           = @oldincludedir@
+prefix                 = @prefix@
+exec_prefix            = @exec_prefix@
+bindir                 = @bindir@
+datadir                        = @datadir@
+#sysconfdir            = @datadir@
+#sharedstatedir                = @sharedstatedir@
+#localstatedir         = @localstatedir@
+libdir                 = @libdir@
+includedir             = @includedir@
+oldincludedir          = @oldincludedir@
 mandir                 = @mandir@
+
+#UNUSED, see below: libexecdir              = @libexecdir@
+#UNUSED:infodir                = @infodir@
 #UNUSED:srcdir          = @srcdir@
 
 # 
@@ -400,9 +419,6 @@ endif
 ifeq "$(strip $(libdir))" ""
 libdir         = $(exec_prefix)/lib
 endif
-ifeq "$(strip $(infodir))" ""
-infodir                = $(prefix)/info
-endif
 ifeq "$(strip $(includedir))" ""
 includedir     = $(prefix)/include
 endif
@@ -468,19 +484,13 @@ ETAGS_PREFIX              = $(GLAFP_UTILS)/etags/
 MSUB_PREFIX            = $(GLAFP_UTILS)/msub/
 LNDIR_PREFIX           = $(GLAFP_UTILS)/lndir/
 MKDIRHIER_PREFIX       = $(GLAFP_UTILS)/mkdirhier/
-
-# Still used?
-LITERATE               = $(FPTOOLS_TOP)/literate
+DOCBOOK_PREFIX         = $(GLAFP_UTILS)/docbook/
 
 LITERATE_PREFIX        = $(FPTOOLS_TOP)/literate/
-INFO_PREFIX                    = $(FPTOOLS_TOP)/literate/info-utils/
-TEXI2HTML_PREFIX        = $(LITERATE_PREFIX)texi2html/
 
 HAPPY_PREFIX           = $(FPTOOLS_TOP)/happy/src/
 GREENCARD_PREFIX       = $(FPTOOLS_TOP)/green-card/src/
 
-RTS_PREFIX             = $(FPTOOLS_TOP)/common-rts/
-
 UNLIT_PREFIX           = $(FPTOOLS_TOP)/ghc/utils/unlit/
 UGEN_PREFIX             = $(FPTOOLS_TOP)/ghc/utils/ugen/
 STAT2RESID_PREFIX       = $(FPTOOLS_TOP)/ghc/utils/stat2resid/
@@ -502,8 +512,8 @@ GHC         = @GHC@
 HBC            = @HBC@
 NHC            = @NHC@
 
-HC             = @WithHc@
-MKDEPENDHS     = $(GHC)
+HC             = @WithHc@
+MKDEPENDHS     = $(HC)
 
 # Sometimes we want to invoke ghc from the build tree in different
 # projects (eg. it's handy to have a nofib & a ghc build in the same
@@ -557,6 +567,7 @@ CP                  = cp
 CPP                    = @CPP@
 CTAGS                  = $(ETAGS)
 RAWCPP                  = $(CPP) -undef -traditional
+FIND                   = @FindCmd@
 INSTALL                        = @INSTALL@
 #
 # Sigh - the autoconf macro for INSTALL will subst a relative path to the fallback
@@ -592,7 +603,7 @@ SHELL                       = /bin/sh
 # We do not use SHELL to execute long commands, as `make' will more than likely
 # override whatever setting you have in your environment while executing. 
 
-# By default, REAL_SHELL is set equal SHELL, which is not really a smart move
+# By default, REAL_SHELL is set equal to SHELL, which is not really a smart move
 # as it is SHELL that will show up the bogosity in the first place, but setting
 # it to anything else isn't really portable.
 #
@@ -607,7 +618,7 @@ TAR                 = @TarCmd@
 ZIP                    = zip
 
 #
-# Under cygwin32, we have to deal with .exe suffixes
+# Under Windows, we have to deal with .exe suffixes
 #
 EXE_SUFFIX=@ExeSuffix@
 
@@ -627,12 +638,24 @@ UNAME                     = uname
 YACC                   = @YaccCmd@
 
 #-----------------------------------------------------------------------------
-# SGML stuff (currently not configured - we assume you have it)
+# SGML stuff
+
+JADE                   = @JadeCmd@
+
+SGML2DVI               = $(DOCBOOK_PREFIX)db2dvi
+SGML2HTML              = $(DOCBOOK_PREFIX)db2html
+SGML2PS                        = $(DOCBOOK_PREFIX)db2ps
+SGML2PDF               = $(DOCBOOK_PREFIX)db2pdf
+SGML2RTF               = $(DOCBOOK_PREFIX)db2rtf
+
+SGMLSTYLESHEET          = $(FPTOOLS_TOP_ABS)/docs/fptools-both.dsl
+
+SRC_SGML2DVI_OPTS       = -d $(SGMLSTYLESHEET)
+SRC_SGML2HTML_OPTS      = -d $(SGMLSTYLESHEET)
+SRC_SGML2PS_OPTS       = -d $(SGMLSTYLESHEET)
+SRC_SGML2RTF_OPTS       = -d $(SGMLSTYLESHEET)
 
-SGML2LATEX             = sgml2latex
-SGML2HTML              = sgml2html
-SGML2INFO              = sgml2info
-SGML2TXT               = sgml2txt
+DOCBOOK_CATALOG                = $(FPTOOLS_TOP_ABS)/@Catalog@
 
 #-----------------------------------------------------------------------------
 #              FPtools support software
@@ -646,7 +669,6 @@ MSUB                        = $(MSUB_PREFIX)msub
 ETAGS                  = $(ETAGS_PREFIX)etags
 VERBATIM               = $(VERBATIM_PREFIX)verbatim
 SGMLVERB               = $(SGMLVERB_PREFIX)sgmlverb
-SGML2LATEX             = sgml2latex
 RUNTEST                        = $(RUNTEST_PREFIX)runstdtest
 HAPPY                  = @HappyCmd@
 HAPPY_VERSION          = @HappyVersion@                
@@ -658,17 +680,12 @@ BLD_DLL                   = dllwrap
 #
 # Stuff from fptools/literate
 #
-INFO                   = $(UTIL_PREFIX)info
-MAKEINFO               = $(INFO_PREFIX)makeinfo
-POSTMAKEINFO           = $(INFO_PREFIX)postmakeinfo
 LIT2PGM                = $(LITERATE_PREFIX)lit2pgm
-LIT2TEXI               = $(LITERATE_PREFIX)lit2texi
 LIT2HTML               = $(LITERATE_PREFIX)lit2html
 LIT2LATEX              = $(LITERATE_PREFIX)lit2latex
 MKDEPENDLIT            = $(LITERATE_PREFIX)mkdependlit
 LIT2CHANGELOG          = $(LITERATE_PREFIX)lit2changelog
 LIT2TEXT               = $(LITERATE_PREFIX)lit2text
-TEXI2HTML               = $(TEXI2HTML_PREFIX)texi2html
 
 #
 # Stuff from fptools/ghc/utils
@@ -717,6 +734,7 @@ HSTAGS                      = $(HSTAGS_PREFIX)hstags
 # The ways currently defined.
 #
 ALL_WAYS=p t u s mp mg a b c d e f g h i j k l m n o A B
+USER_WAYS=a b c d e f g h i j k l m n o A B
 
 #
 # The following ways currently have treated specially, p u t mg,