Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
GHC
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Locked Files
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Iterations
Merge Requests
0
Merge Requests
0
Requirements
Requirements
List
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Security & Compliance
Security & Compliance
Dependency List
License Compliance
Operations
Operations
Incidents
Environments
Packages & Registries
Packages & Registries
Package Registry
Container Registry
Analytics
Analytics
CI / CD
Code Review
Insights
Issue
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
jberryman
GHC
Commits
02b60157
Commit
02b60157
authored
Nov 21, 1996
by
simonm
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[project @ 1996-11-21 16:45:53 by simonm]
New Build System!
parent
c7cfec62
Changes
112
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
112 changed files
with
3534 additions
and
5259 deletions
+3534
-5259
Makefile
Makefile
+23
-0
Makefile.in
Makefile.in
+0
-36
STARTUP.in
STARTUP.in
+0
-129
configure.in
configure.in
+58
-175
ghc/Jmakefile
ghc/Jmakefile
+0
-38
ghc/Makefile
ghc/Makefile
+79
-0
ghc/Makefile.BOOT
ghc/Makefile.BOOT
+0
-59
ghc/compiler/Jmakefile
ghc/compiler/Jmakefile
+0
-920
ghc/compiler/Makefile
ghc/compiler/Makefile
+223
-0
ghc/compiler/simplCore/SimplCore.lhs
ghc/compiler/simplCore/SimplCore.lhs
+1
-1
ghc/docs/Jmakefile
ghc/docs/Jmakefile
+0
-13
ghc/docs/Makefile
ghc/docs/Makefile
+6
-0
ghc/docs/install_guide/Jmakefile
ghc/docs/install_guide/Jmakefile
+0
-3
ghc/docs/install_guide/Makefile
ghc/docs/install_guide/Makefile
+5
-0
ghc/docs/release_notes/Jmakefile
ghc/docs/release_notes/Jmakefile
+0
-10
ghc/docs/release_notes/Makefile
ghc/docs/release_notes/Makefile
+6
-0
ghc/docs/state_interface/Makefile
ghc/docs/state_interface/Makefile
+5
-3
ghc/docs/users_guide/Jmakefile
ghc/docs/users_guide/Jmakefile
+0
-6
ghc/docs/users_guide/Makefile
ghc/docs/users_guide/Makefile
+7
-0
ghc/driver/Jmakefile
ghc/driver/Jmakefile
+0
-44
ghc/driver/Makefile
ghc/driver/Makefile
+34
-0
ghc/driver/ghc-iface.lprl
ghc/driver/ghc-iface.lprl
+4
-4
ghc/driver/ghc.lprl
ghc/driver/ghc.lprl
+32
-32
ghc/includes/Jmakefile
ghc/includes/Jmakefile
+0
-105
ghc/includes/Makefile
ghc/includes/Makefile
+41
-0
ghc/lib/.depend
ghc/lib/.depend
+77
-0
ghc/lib/Jmakefile
ghc/lib/Jmakefile
+0
-236
ghc/lib/Makefile
ghc/lib/Makefile
+47
-0
ghc/lib/Makefile.libHS
ghc/lib/Makefile.libHS
+125
-0
ghc/lib/cbits/Jmakefile
ghc/lib/cbits/Jmakefile
+0
-68
ghc/lib/cbits/Makefile
ghc/lib/cbits/Makefile
+37
-0
ghc/lib/tests/Jmakefile
ghc/lib/tests/Jmakefile
+0
-0
ghc/mk/buildflags.mk
ghc/mk/buildflags.mk
+198
-0
ghc/mk/ghc-opts.mk
ghc/mk/ghc-opts.mk
+192
-0
ghc/mk/ghc.mk
ghc/mk/ghc.mk
+14
-0
ghc/mk/ghcconfig.mk.in
ghc/mk/ghcconfig.mk.in
+239
-0
ghc/mk/site-ghc.mk
ghc/mk/site-ghc.mk
+99
-0
ghc/mk/suffixes-ghc.mk
ghc/mk/suffixes-ghc.mk
+40
-0
ghc/mkworld/GHC_OPTS
ghc/mkworld/GHC_OPTS
+0
-64
ghc/mkworld/Jmakefile
ghc/mkworld/Jmakefile
+0
-0
ghc/mkworld/install-ghc.jm
ghc/mkworld/install-ghc.jm
+0
-9
ghc/mkworld/macros-ghc.jm
ghc/mkworld/macros-ghc.jm
+0
-20
ghc/mkworld/only4-ghc.jm
ghc/mkworld/only4-ghc.jm
+0
-391
ghc/mkworld/site-ghc.jm.in
ghc/mkworld/site-ghc.jm.in
+0
-467
ghc/mkworld/suffixes-ghc.jm
ghc/mkworld/suffixes-ghc.jm
+0
-27
ghc/mkworld/utils-ghc.jm
ghc/mkworld/utils-ghc.jm
+0
-141
ghc/runtime/Jmakefile
ghc/runtime/Jmakefile
+0
-440
ghc/runtime/Makefile
ghc/runtime/Makefile
+114
-0
ghc/runtime/Makefile.libHSrts
ghc/runtime/Makefile.libHSrts
+220
-0
ghc/runtime/gmp/Makefile
ghc/runtime/gmp/Makefile
+19
-19
ghc/runtime/gmp/tests/Jmakefile
ghc/runtime/gmp/tests/Jmakefile
+0
-0
ghc/utils/Jmakefile
ghc/utils/Jmakefile
+0
-19
ghc/utils/Makefile
ghc/utils/Makefile
+20
-0
ghc/utils/heap-view/Jmakefile
ghc/utils/heap-view/Jmakefile
+0
-21
ghc/utils/heap-view/Makefile
ghc/utils/heap-view/Makefile
+56
-0
ghc/utils/hp2ps/Makefile
ghc/utils/hp2ps/Makefile
+28
-0
ghc/utils/hscpp/Jmakefile
ghc/utils/hscpp/Jmakefile
+0
-30
ghc/utils/hscpp/Makefile
ghc/utils/hscpp/Makefile
+12
-0
ghc/utils/hstags/Jmakefile
ghc/utils/hstags/Jmakefile
+0
-20
ghc/utils/mkdependHS/Jmakefile
ghc/utils/mkdependHS/Jmakefile
+0
-16
ghc/utils/mkdependHS/Makefile
ghc/utils/mkdependHS/Makefile
+9
-0
ghc/utils/mkdependHS/mkdependHS.prl
ghc/utils/mkdependHS/mkdependHS.prl
+2
-2
ghc/utils/parallel/Jmakefile
ghc/utils/parallel/Jmakefile
+0
-97
ghc/utils/parallel/Makefile
ghc/utils/parallel/Makefile
+64
-0
ghc/utils/stat2resid/Jmakefile
ghc/utils/stat2resid/Jmakefile
+0
-26
ghc/utils/stat2resid/Makefile
ghc/utils/stat2resid/Makefile
+19
-0
ghc/utils/ugen/Jmakefile
ghc/utils/ugen/Jmakefile
+0
-26
ghc/utils/ugen/Makefile
ghc/utils/ugen/Makefile
+18
-0
ghc/utils/ugen/lex.c
ghc/utils/ugen/lex.c
+0
-514
ghc/utils/ugen/lex.flex
ghc/utils/ugen/lex.flex
+53
-0
ghc/utils/ugen/main.c
ghc/utils/ugen/main.c
+2
-0
ghc/utils/ugen/syntax.tab.c
ghc/utils/ugen/syntax.tab.c
+0
-858
ghc/utils/ugen/syntax.tab.h
ghc/utils/ugen/syntax.tab.h
+0
-13
ghc/utils/ugen/syntax.y
ghc/utils/ugen/syntax.y
+6
-6
ghc/utils/ugen/tree.c
ghc/utils/ugen/tree.c
+2
-2
ghc/utils/ugen/tree.ugn
ghc/utils/ugen/tree.ugn
+1
-0
ghc/utils/ugen/yyerror.c
ghc/utils/ugen/yyerror.c
+8
-20
ghc/utils/unlit/Jmakefile
ghc/utils/unlit/Jmakefile
+0
-10
ghc/utils/unlit/Makefile
ghc/utils/unlit/Makefile
+8
-0
glafp-utils/Jmakefile
glafp-utils/Jmakefile
+0
-4
glafp-utils/Makefile
glafp-utils/Makefile
+15
-0
glafp-utils/Makefile.BOOT
glafp-utils/Makefile.BOOT
+0
-58
glafp-utils/fastmake/Makefile
glafp-utils/fastmake/Makefile
+9
-0
glafp-utils/fastmake/fastmake.prl
glafp-utils/fastmake/fastmake.prl
+0
-0
glafp-utils/lndir/Makefile
glafp-utils/lndir/Makefile
+8
-0
glafp-utils/lndir/lndir-Xos.h
glafp-utils/lndir/lndir-Xos.h
+0
-0
glafp-utils/lndir/lndir-Xosdefs.h
glafp-utils/lndir/lndir-Xosdefs.h
+0
-0
glafp-utils/lndir/lndir.c
glafp-utils/lndir/lndir.c
+0
-0
glafp-utils/ltx/Makefile
glafp-utils/ltx/Makefile
+9
-0
glafp-utils/ltx/ltx.prl
glafp-utils/ltx/ltx.prl
+0
-0
glafp-utils/mkdependC/Makefile
glafp-utils/mkdependC/Makefile
+9
-0
glafp-utils/mkdependC/mkdependC.prl
glafp-utils/mkdependC/mkdependC.prl
+0
-0
glafp-utils/mkdirhier/Makefile
glafp-utils/mkdirhier/Makefile
+9
-0
glafp-utils/mkdirhier/mkdirhier.sh
glafp-utils/mkdirhier/mkdirhier.sh
+0
-0
glafp-utils/msub/Jmakefile
glafp-utils/msub/Jmakefile
+0
-7
glafp-utils/msub/Makefile
glafp-utils/msub/Makefile
+12
-0
glafp-utils/runstdtest/Makefile
glafp-utils/runstdtest/Makefile
+9
-0
glafp-utils/runstdtest/runstdtest.prl
glafp-utils/runstdtest/runstdtest.prl
+0
-0
glafp-utils/scripts/Jmakefile
glafp-utils/scripts/Jmakefile
+0
-50
mk/Cprog.mk
mk/Cprog.mk
+42
-0
mk/HSprog.mk
mk/HSprog.mk
+38
-0
mk/cdepend.mk
mk/cdepend.mk
+14
-0
mk/clib.mk
mk/clib.mk
+34
-0
mk/gen.mk
mk/gen.mk
+37
-0
mk/hsdepend.mk
mk/hsdepend.mk
+14
-0
mk/install.mk.in
mk/install.mk.in
+83
-0
mk/lib.mk
mk/lib.mk
+39
-0
mk/platform.mk.in
mk/platform.mk.in
+22
-0
mk/rules.mk
mk/rules.mk
+313
-0
mk/script.mk
mk/script.mk
+53
-0
mk/subdir.mk
mk/subdir.mk
+110
-0
mk/utils.mk.in
mk/utils.mk.in
+402
-0
No files found.
Makefile
0 → 100644
View file @
02b60157
#-----------------------------------------------------------------------------
# $Id: Makefile,v 1.2 1996/11/21 16:45:54 simonm Exp $
TOP
=
.
SUBDIRS
=
glafp-utils ghc
include
$(TOP)/mk/gen.mk
include
$(TOP)/mk/subdir.mk
line
=
@echo
"------------------------------------------------------------------------------"
boot
::
@
echo
"Bootstrapping
$(PROJECTNAME)
..."
$(line)
@
echo
"Booting glafp-utils"
$(line)
@
$(MAKE)
-C
glafp-utils boot
$(line)
@echo
"Booting ghc"
$(line)
@$(MAKE)
-C
ghc
boot
@echo
"Done!"
Makefile.in
deleted
100644 → 0
View file @
c7cfec62
# @configure_input@
srcdir
=
@srcdir@
VPATH
=
@srcdir@
CC
=
@CC@
INSTALL
=
@INSTALL@
INSTALL_PROGRAM
=
@INSTALL_PROGRAM@
INSTALL_DATA
=
@INSTALL_DATA@
LIBS
=
@LIBS@
CFLAGS
=
-O
LDFLAGS
=
-O
prefix
=
/usr/local
exec_prefix
=
$(prefix)
binprefix
=
manprefix
=
bindir
=
$(exec_prefix)
/bin
libdir
=
$(exec_prefix)
/lib
mandir
=
$(prefix)
/man/man1
manext
=
1
SHELL
=
/bin/sh
Makefile
:
Makefile.in config.status
$(SHELL)
config.status
config.status
:
configure
$(SHELL)
config.status
--recheck
configure
:
configure.in
cd
$(srcdir)
&&
autoconf < configure.in
>
configure.new
grep
-v
'# Generated automatically from'
< configure.new
>
configure
STARTUP.in
deleted
100644 → 0
View file @
c7cfec62
#! /bin/sh
#
# die quickly if anything goes astray...
set
-e
# figure out the absolute pathname of the "top" directory
# (the one which has "mkworld", "nofib", "glafp-utils", etc., as subdirs)
hardtop
=
`
pwd
`
hardtop
=
`
echo
$hardtop
|
sed
's|^/tmp_mnt/|/|'
|
sed
's|^/export/|/|'
|
sed
's|^/grasp_tmp|/local/grasp_tmp|'
`
echo
''
echo
"*** The top of your build tree is:
$hardtop
"
case
"
$hardtop
"
in
# NeXTStep brain damage
/private/tmp_mnt/auto
*
)
echo
'***'
echo
'*** AAARRRGGGHHHH!!!'
echo
'***'
echo
'*** Stupid automounter (and pwd) will not tell me'
echo
'*** the absolute pathname for the current directory.'
echo
'*** Be sure to set TopDirPwd in mkworld/site-DEF.jm.'
echo
'*** (Then it does not matter what this script decides.)'
echo
'***'
;;
esac
# make "mkworld", "literate", and "glafp-utils" (no special configuration)
# make all the Makefiles first
for
i
in
@DoingMkWorld@ @DoingGlaFpUtils@ @DoingLiterate@
;
do
if
[
-d
$i
]
;
then
(
set
-e
;
\
cd
$i
;
\
echo
''
;
\
echo
"*** configuring
$i
..."
;
\
@MakeCmd@
-f
Makefile.BOOT
BOOT_DEFINES
=
"-P none -S std -DTopDirPwd=
$hardtop
"
;
\
echo
''
;
\
echo
"*** making Makefiles in
$i
..."
;
\
@MakeCmd@ Makefile
;
\
@MakeCmd@ Makefiles
\
)
else
echo
warning:
$i
is not a directory
--
doing nothing
for
it
fi
done
# now make the dependencies and Real Stuff
for
i
in
@DoingMkWorld@ @DoingGlaFpUtils@ @DoingLiterate@
;
do
if
[
-d
$i
]
;
then
(
set
-e
;
\
cd
$i
;
\
echo
''
;
\
echo
"*** making dependencies in
$i
..."
;
\
@MakeCmd@ depend
;
\
echo
''
;
\
echo
"*** making all in
$i
..."
;
\
@MakeCmd@ all
\
)
else
echo
warning:
$i
is not a directory
--
doing nothing
for
it
fi
done
# OK, now make the \`real' Makefiles
passed_in_setup
=
"-S @MkWorldSetup@"
for
i
in
@DoingGHC@ @DoingHsLibs@ @DoingHappy@ @DoingHaggis@ @DoingNoFib@ EndOfList
;
do
if
[
$i
=
nofib
]
;
then
setup
=
$passed_in_setup
else
setup
=
''
fi
if
[
-d
$i
]
;
then
(
set
-e
;
\
cd
$i
;
\
echo
''
;
\
echo
"*** configuring
$i
..."
;
\
@MakeCmd@
-f
Makefile.BOOT
BOOT_DEFINES
=
"-P
$i
$setup
-C mkworld -DTopDirPwd=
$hardtop
"
;
\
echo
''
;
\
echo
"*** making Makefiles in
$i
..."
;
\
@MakeCmd@ Makefile
;
\
@MakeCmd@ Makefiles
\
)
else
if
[
$i
!=
EndOfList
]
;
then
echo
warning:
$i
is not a directory
--
doing nothing
for
it
fi
fi
done
# Finally, the dependencies
for
i
in
@DoingGHC@ @DoingHsLibs@ @DoingHappy@ @DoingHaggis@ @DoingNoFib@ EndOfList
;
do
if
[
-d
$i
]
;
then
(
set
-e
;
\
cd
$i
;
\
echo
''
;
\
echo
"*** making dependencies in
$i
..."
;
\
@MakeCmd@ depend
\
)
else
if
[
$i
!=
EndOfList
]
;
then
echo
warning:
$i
is not a directory
--
doing nothing
for
it
fi
fi
done
echo
''
echo
'*******************************************************************'
echo
"* Looking good! All you should need to do now is... *"
echo
'* *'
for
i
in
@DoingGHC@ @DoingHsLibs@ @DoingHappy@ @DoingHaggis@ @DoingNoFib@ EndOfList
;
do
if
[
$i
!=
EndOfList
]
;
then
echo
" cd
$i
"
if
[
$i
=
nofib
]
;
then
echo
' make all # or...'
echo
' make runtests'
else
echo
' make all'
echo
' make install # if you are so inclined...'
fi
fi
done
echo
'* *'
echo
'*******************************************************************'
exit
0
configure.in
View file @
02b60157
...
@@ -12,88 +12,60 @@ dnl * INITIAL SETUP, CHOICE OF PLATFORM(S)
...
@@ -12,88 +12,60 @@ dnl * INITIAL SETUP, CHOICE OF PLATFORM(S)
# Do "./configure --help" to see what flags are available.
# Do "./configure --help" to see what flags are available.
# (Better yet, read the documentation!)
# (Better yet, read the documentation!)
#
#
AC_INIT(mk/platform.mk)
# -------------------------------------------------------------------------
# -------------------------------------------------------------------------
AC_INIT(STARTUP.in)
#
# Prepare to generate the following header files
# Prepare to generate the following header files
#
#
AC_CONFIG_HEADER(ghc/includes/config.h)
AC_CONFIG_HEADER(ghc/includes/config.h literate/lit-deatify/config.h)
# and literate/config.h ???
# ToDo !!!!!!!!!!!!!!!!
#
# No, we don't do `--srcdir'...
# No, we don't do `--srcdir'...
if test x"$srcdir" != 'x.' ; then
if test x"$srcdir" != 'x.' ; then
echo "This configuration does not support the \`--srcdir' option."
echo "This configuration does not support the \`--srcdir' option."
exit 1
exit 1
fi
fi
hardtop=`pwd`
hardtop=`echo $hardtop | sed 's|^/tmp_mnt/|/|' | sed 's|^/export/|/|' | sed 's|^/grasp_tmp|/local/grasp_tmp|'`
echo ''
echo "*** The top of your build tree is: $hardtop"
AC_SUBST(hardtop)
# -------------------------------------------------------------------------
# -------------------------------------------------------------------------
dnl ** choose what blobs to build (ghc,hslibs,haggis,happy,nofib,????)
dnl ** choose what blobs to build (ghc,hslibs,haggis,happy,nofib,????)
# set to the name for the dir if doing it, otherwise empty
# set to the name for the dir if doing it, otherwise empty
DoingGHC='ghc'
DoingHsLibs=''
DoingHsLibs=''
DoingNoFib=''
DoingNoFib=''
DoingHappy=''
DoingHappy=''
DoingHaggis=''
DoingHaggis=''
DoingLiterate=''
# the following are not normally changed
DoingMkWorld='mkworld'
DoingGlaFpUtils='glafp-utils'
MkWorldSetup='std'
MkWorldSetup='std'
AC_ARG_ENABLE(
ghc
,
AC_ARG_ENABLE(
hslibs
,
[
[
**********************************************************************
**********************************************************************
* Configuration options for the Glasgow functional-programming tools *
* Configuration options for the Glasgow functional-programming tools *
**********************************************************************
**********************************************************************
First, select *which* of the tools you want to build,
First, select *which* of the tools you want to build,
with
with --{enable,disable}-{ghc,hslibs,nofib,happy,haggis}.
--{enable,disable}-{hslibs,nofib,happy,haggis}. (Currently, you have to
(The default is: only GHC (Glasgow Haskell compiler)
.)
build ghc
.)
Second, you may set one of a few applies-in-all-cases options.
Second, you may set one of a few applies-in-all-cases options.
For
For
example, --with-tmpdir=/usr/tmp.
example, --with-tmpdir=/usr/tmp.
Then you may set various options which are specifically for the
Then you may set various options which are specifically for the
tools you
tools you choose in step 1. For GHC, perhaps --enable-concurrent.
choose in step 1. For GHC, perhaps --enable-concurrent. For NoFib,
For NoFib,
perhaps --enable-all-tests. And so on.
perhaps --enable-all-tests. And so on.
The rest of this message lists all of the configure options. If the
The rest of this message lists all of the configure options. If the option
option is enabled by default, the message says how to disable it. And
is enabled by default, the message says how to disable it. And vice versa.
vice versa.
If you are confused, don't forget the installation documents that came
If you are confused, don't forget the installation documents that came
with
with
the software!
the software!
*******************************************************************
*******************************************************************
** FOR SELECTING WHICH GLASGOW FP TOOLS TO BUILD:
** FOR SELECTING WHICH GLASGOW FP TOOLS TO BUILD:]
--disable-ghc do *not* build GHC as part of Glasgow FP tools],
[case "$enableval" in
yes) DoingGHC='ghc'
;;
no) DoingGHC=''
;;
*) echo "I don't understand this option: --enable-ghc=$enableval"
exit 1
;;
esac])
if test "xxx$DoingGHC" = 'xxxghc' -a \( ! -d ghc \) ; then
DoingGHC=''
echo 'Doing --disable-ghc, as there is no ghc directory'
fi
ghc_mkworld_site_ghc_jm='ghc/mkworld/site-ghc.jm'
ghc_includes_platform_h='ghc/includes/platform.h'
# duznae work: ghc_includes_config_h='ghc/includes/config.h'
if test "xxx$DoingGHC" = 'xxx' ; then
ghc_mkworld_site_ghc_jm=''
ghc_includes_platform_h=''
# ghc_includes_config_h=''
fi
AC_ARG_ENABLE(hslibs,
[--enable-hslibs build suite of Haskell libraries],
[--enable-hslibs build suite of Haskell libraries],
[case "$enableval" in
[case "$enableval" in
yes) DoingHsLibs='hslibs'
yes) DoingHsLibs='hslibs'
...
@@ -108,10 +80,6 @@ if test "xxx$DoingHsLibs" = 'xxxhslibs' -a \( ! -d hslibs \) ; then
...
@@ -108,10 +80,6 @@ if test "xxx$DoingHsLibs" = 'xxxhslibs' -a \( ! -d hslibs \) ; then
DoingHsLibs=''
DoingHsLibs=''
echo 'Doing --disable-hslibs, as there is no hslibs directory'
echo 'Doing --disable-hslibs, as there is no hslibs directory'
fi
fi
hslibs_mkworld_site_hslibs_jm='hslibs/mkworld/site-hslibs.jm'
if test "xxx$DoingHsLibs" = 'xxx' ; then
hslibs_mkworld_site_hslibs_jm=''
fi
AC_ARG_ENABLE(nofib,
AC_ARG_ENABLE(nofib,
[--enable-nofib build NoFib suite as part of Glasgow FP tools],
[--enable-nofib build NoFib suite as part of Glasgow FP tools],
...
@@ -128,10 +96,6 @@ if test "xxx$DoingNoFib" = 'xxxnofib' -a \( ! -d nofib \) ; then
...
@@ -128,10 +96,6 @@ if test "xxx$DoingNoFib" = 'xxxnofib' -a \( ! -d nofib \) ; then
DoingNoFib=''
DoingNoFib=''
echo 'Doing --disable-nofib, as there is no nofib directory'
echo 'Doing --disable-nofib, as there is no nofib directory'
fi
fi
nofib_mkworld_site_nofib_jm='nofib/mkworld/site-nofib.jm'
if test "xxx$DoingNoFib" = 'xxx' ; then
nofib_mkworld_site_nofib_jm=''
fi
AC_ARG_ENABLE(happy,
AC_ARG_ENABLE(happy,
[--enable-happy build Happy parser-generator as part of Glasgow FP tools],
[--enable-happy build Happy parser-generator as part of Glasgow FP tools],
...
@@ -165,64 +129,10 @@ if test "xxx$DoingHaggis" = 'xxxhaggis' -a \( ! -d haggis \) ; then
...
@@ -165,64 +129,10 @@ if test "xxx$DoingHaggis" = 'xxxhaggis' -a \( ! -d haggis \) ; then
echo 'Doing --disable-haggis, as there is no haggis directory'
echo 'Doing --disable-haggis, as there is no haggis directory'
fi
fi
AC_ARG_ENABLE(literate,
[
The following three are \`for hackers only':
--disable-literate do *not* build literate-programming stuff],
[case "$enableval" in
yes) DoingLiterate='literate'
;;
no) DoingLiterate=''
;;
*) echo "I don't understand this option: --enable-literate=$enableval"
exit 1
;;
esac])
if test "xxx$DoingLiterate" = 'xxxliterate' -a \( ! -d literate \) ; then
DoingLiterate=''
echo 'Doing --disable-literate, as there is no literate directory'
fi
AC_ARG_ENABLE(mkworld,
[--disable-mkworld do *not* build \`mkworld' configuration stuff],
[case "$enableval" in
yes) DoingMkWorld='mkworld'
;;
no) DoingMkWorld=''
;;
*) echo "I don't understand this option: --enable-mkworld=$enableval"
exit 1
;;
esac])
if test "xxx$DoingMkWorld" = 'xxxmkworld' -a \( ! -d mkworld \) ; then
DoingMkWorld=''
echo 'Doing --disable-mkworld, as there is no mkworld directory'
fi
AC_ARG_ENABLE(glafp-utils,
[--disable-glafp-utils do *not* build \`glafp utilities'],
[case "$enableval" in
yes) DoingGlaFpUtils='glafp-utils'
;;
no) DoingGlaFpUtils=''
;;
*) echo "I don't understand this option: --enable-glafp-utils=$enableval"
exit 1
;;
esac])
if test "xxx$DoingGlaFpUtils" = 'xxxglafp-utils' -a \( ! -d glafp-utils \) ; then
DoingGlaFpUtils=''
echo 'Doing --disable-glafp-utils, as there is no glafp-utils directory'
fi
AC_SUBST(DoingGHC)
AC_SUBST(DoingHsLibs)
AC_SUBST(DoingHsLibs)
AC_SUBST(DoingNoFib)
AC_SUBST(DoingNoFib)
AC_SUBST(DoingHappy)
AC_SUBST(DoingHappy)
AC_SUBST(DoingHaggis)
AC_SUBST(DoingHaggis)
AC_SUBST(DoingLiterate)
AC_SUBST(DoingMkWorld)
AC_SUBST(DoingGlaFpUtils)
# -------------------------------------------------------------------------
# -------------------------------------------------------------------------
dnl ** choose host(/target/build) platform
dnl ** choose host(/target/build) platform
...
@@ -726,19 +636,22 @@ AC_ARG_WITH(tmpdir,
...
@@ -726,19 +636,22 @@ AC_ARG_WITH(tmpdir,
AC_SUBST(TmpDir)
AC_SUBST(TmpDir)
dnl ** possibly set a max heap for Haskell compilations
dnl ** possibly set a max heap for Haskell compilations
# let the user specify a maximum heap to be used; the old
HcMaxHeapFlag=''
# "I have a 64MB machine, why not use a 32MB heap?" thing.
HcMaxHeapWasSet='NO'
HcMaxHeap='0'
AC_ARG_WITH(max-heap,
AC_ARG_WITH(max-heap,
[
[
--with-max-heap=<heap size, e.g., 32m>
--with-max-heap=<heap size, e.g., 32m>
Do all Haskell compilations with a heap of this size. (If
Do all Haskell compilations with a heap of this size.],
you've got it, flaunt it.)],
[HcMaxHeapFlag="-H$withval"])
[HcMaxHeapWasSet='YES'
AC_SUBST(HcMaxHeapFlag)
HcMaxHeap="$withval"])
AC_SUBST(HcMaxHeapWasSet)
dnl ** possibly set a max stack for Haskell compilations
AC_SUBST(HcMaxHeap)
HcMaxStackFlag=''
AC_ARG_WITH(max-stack,
[
--with-max-stack=<stack size, e.g., 4m>
Do all Haskell compilations with a stack of this size.],
[HcMaxStackFlag="-K$withval"])
AC_SUBST(HcMaxStackFlag)
dnl ** figure out about mkdependHS
dnl ** figure out about mkdependHS
MkDependHSCmd='mkdependHS'
MkDependHSCmd='mkdependHS'
...
@@ -1273,14 +1186,8 @@ dnl as some seds (notably OSF) only allow 99 commands (!!!).
...
@@ -1273,14 +1186,8 @@ dnl as some seds (notably OSF) only allow 99 commands (!!!).
dnl We will do the equivalent by a HACK further down.
dnl We will do the equivalent by a HACK further down.
# -------------------------------------------------------------------------
# -------------------------------------------------------------------------
dnl
dnl GHC CONFIGURATION STUFF
dnl * `GHC' CONFIGURATION STUFF
if test "xxx$DoingGHC" = 'xxxghc' ; then
# a very big "if"!
#
#---------------------------------------------------------------
#
dnl ** which Haskell compiler to bootstrap GHC with?
dnl ** which Haskell compiler to bootstrap GHC with?
# Figure out what Haskell compiler(s) to use for booting
# Figure out what Haskell compiler(s) to use for booting
#
#
...
@@ -1517,23 +1424,14 @@ AC_SUBST(GhcWithSockets)
...
@@ -1517,23 +1424,14 @@ AC_SUBST(GhcWithSockets)
# Here, by HACK means, we dump all the Build_ info
# Here, by HACK means, we dump all the Build_ info
# into a file. See comment above.
# into a file. See comment above.
rm -f ghc/mkworld/buildinfo.jm
rm -f ghc/mk/buildinfo.mk
echo creating ghc/mkworld/buildinfo.jm
echo creating ghc/mk/buildinfo.mk
cat > ghc/mkworld/buildinfo.jm <<EOF
touch ghc/mk/buildinfo.mk
XCOMM ** DO NOT EDIT! **
XCOMM This file is obliterated every time 'configure' is run!
EOF
for xx in normal p t u mc mr mt mp mg 2s 1s du a b c d e f g h i j k l m n o A B ; do
for xx in normal p t u mc mr mt mp mg 2s 1s du a b c d e f g h i j k l m n o A B ; do
eval "yy=\$Build_$xx"
eval "yy=\$Build_$xx"
echo "#ifndef Build_$xx" >> ghc/mkworld/buildinfo.jm
echo "Build_$xx = $yy" >> ghc/mk/buildinfo.mk
echo "#define Build_$xx $yy" >> ghc/mkworld/buildinfo.jm
echo "#endif" >> ghc/mkworld/buildinfo.jm
done
done
# here ends a very big if DoingGHC = 'ghc' ...
fi
# -------------------------------------------------------------------------
# -------------------------------------------------------------------------
dnl
dnl
dnl * `HsLibs' CONFIGURATION STUFF
dnl * `HsLibs' CONFIGURATION STUFF
...
@@ -1593,20 +1491,19 @@ AC_SUBST(WithHsLibsHcType)
...
@@ -1593,20 +1491,19 @@ AC_SUBST(WithHsLibsHcType)
# Here, by HACK means, we dump all the Build_ info
# Here, by HACK means, we dump all the Build_ info
# into a file. See comment above.
# into a file. See comment above.
rm -f hslibs/mk
world/buildinfo.jm
rm -f hslibs/mk
/buildinfo.mk
echo creating hslibs/mk
world/buildinfo.jm
echo creating hslibs/mk
/buildinfo.mk
cat > hslibs/mk
world/buildinfo.jm
<<EOF
cat > hslibs/mk
/buildinfo.mk
<<EOF
XCOMM
** DO NOT EDIT! **
#
** DO NOT EDIT! **
XCOMM
This file is obliterated every time 'configure' is run!
#
This file is obliterated every time 'configure' is run!
EOF
EOF
for xx in normal p t u mc mr mt mp mg 2s 1s du a b c d e f g h i j k l m n o A B ; do
for xx in normal p t u mc mr mt mp mg 2s 1s du a b c d e f g h i j k l m n o A B ; do
eval "yy=\$Build_$xx"
eval "yy=\$Build_$xx"
echo "#ifndef Build_$xx" >> hslibs/mkworld/buildinfo.jm
echo "Build_$xx = $yy" >> hslibs/mk/buildinfo.mk
echo "#define Build_$xx $yy" >> hslibs/mkworld/buildinfo.jm
echo "#endif" >> hslibs/mkworld/buildinfo.jm
done
done
# here ends a very big if DoingHsLibs = 'hslibs' ...
# here ends a very big if DoingHsLibs = 'hslibs' ...
fi
fi
#
#
...
@@ -1757,16 +1654,6 @@ fi
...
@@ -1757,16 +1654,6 @@ fi
#
#
# -------------------------------------------------------------------------
# -------------------------------------------------------------------------
dnl
dnl
dnl * `Literate' CONFIGURATION STUFF
dnl if test "xxx$DoingLiterate" = 'xxxliterate' ; then
dnl # a very big "if"!
dnl
dnl # here ends a very big if DoingLiterate = 'literate' ...
dnl fi
#
# -------------------------------------------------------------------------
dnl
dnl * `NoFib' CONFIGURATION STUFF
dnl * `NoFib' CONFIGURATION STUFF
if test "xxx$DoingNoFib" = 'xxxnofib' ; then
if test "xxx$DoingNoFib" = 'xxxnofib' ; then
...
@@ -2009,28 +1896,24 @@ dnl AC_SUBST(IncludeParallelNoFibTests)
...
@@ -2009,28 +1896,24 @@ dnl AC_SUBST(IncludeParallelNoFibTests)
# Here, by HACK means, we dump all the Include*NoFibTests info
# Here, by HACK means, we dump all the Include*NoFibTests info
# into a file. See comment above.
# into a file. See comment above.
rm -f nofib/mk
world/buildinfo.jm
rm -f nofib/mk
/buildinfo.mk
echo creating nofib/mk
world/buildinfo.jm
echo creating nofib/mk
/buildinfo.mk
cat > nofib/mkworld/buildinfo.jm <<EOF
cat > nofib/mkworld/buildinfo.jm <<EOF
XCOMM
** DO NOT EDIT! **
#
** DO NOT EDIT! **
XCOMM
This file is obliterated every time 'configure' is run!
#
This file is obliterated every time 'configure' is run!
EOF
EOF
for xx in Real Spectral Imaginary GHC_ONLY Specialise PRIVATE Parallel ; do
for xx in Real Spectral Imaginary GHC_ONLY Specialise PRIVATE Parallel ; do
eval "yy=\$Include${xx}NoFibTests"
eval "yy=\$Include${xx}NoFibTests"
echo "#ifndef Include${xx}NoFibTests" >> nofib/mkworld/buildinfo.jm
echo "Include${xx}NoFibTests = $yy" >> nofib/mk/buildinfo.mk
echo "#define Include${xx}NoFibTests $yy" >> nofib/mkworld/buildinfo.jm
echo "#endif" >> nofib/mkworld/buildinfo.jm
done
done
# Here, by HACK means, we add all the Build_ info
# Here, by HACK means, we add all the Build_ info
# into a file. See comment above.
# into a file. See comment above.
for xx in normal p t u mc mr mt mp mg 2s 1s du a b c d e f g h i j k l m n o A B ; do
for xx in normal p t u mc mr mt mp mg 2s 1s du a b c d e f g h i j k l m n o A B ; do
eval "yy=\$Build_$xx"
eval "yy=\$Build_$xx"
echo "#ifndef Build_$xx" >> nofib/mkworld/buildinfo.jm
echo "Build_$xx = $yy" >> nofib/mk/buildinfo.mk
echo "#define Build_$xx $yy" >> nofib/mkworld/buildinfo.jm
echo "#endif" >> nofib/mkworld/buildinfo.jm
done
done
# here ends a very big if DoingNoFib = 'nofib' ...
# here ends a very big if DoingNoFib = 'nofib' ...
...
@@ -2042,9 +1925,9 @@ dnl * extract non-header files with substitution (end)
...
@@ -2042,9 +1925,9 @@ dnl * extract non-header files with substitution (end)
#
#
AC_SUBST(MkWorldSetup)
AC_SUBST(MkWorldSetup)
AC_OUTPUT(
Makefile STARTUP mkworld/site.jm mkworld/platform.h mkworld/config.h $ghc_mkworld_site_ghc_jm $ghc_includes_platform_h $hslibs_mkworld_site_hslibs_jm $nofib_mkworld_site_nofib_jm
)
AC_OUTPUT(
mk/platform.mk mk/utils.mk mk/install.mk ghc/mk/ghcconfig.mk ghc/includes/platform.h
)
echo '************************************************'
echo '************************************************'