| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Most of the other users of the fptools build system have migrated to
Cabal, and with the move to darcs we can now flatten the source tree
without losing history, so here goes.
The main change is that the ghc/ subdir is gone, and most of what it
contained is now at the top level. The build system now makes no
pretense at being multi-project, it is just the GHC build system.
No doubt this will break many things, and there will be a period of
instability while we fix the dependencies. A straightforward build
should work, but I haven't yet fixed binary/source distributions.
Changes to the Building Guide will follow, too.
|
| |
|
|
|
|
|
|
| |
Set BINDIST_DOC_WAYS appropriately depending on which doc-building
tools are available. The default is to build all of html, ps & pdf if
possible.
|
|
|
|
| |
BINDIST_DOC_WAYS: permit variable to be overridden (in a mk/build.mk, perhaps); merge to STABLE
|
|
|
|
|
|
| |
Mac OS X: Make bindist work with dynamic libraries
MERGE TO STABLE
|
|
|
|
| |
Allow for optional binary installation
|
|
|
|
| |
on second thoughts, don't clean mk/config.mk yet
|
|
|
|
| |
Some more distcleaning
|
|
|
|
| |
add mk/fix_install_names.sh to source dist
|
|
|
|
| |
Fix doc building for binary distributions
|
|
|
|
| |
updates to hc-file-bundle target
|
|
|
|
| |
hc-file-bundle: need to track ghc/lib too
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fill in the haddock-interfaces and haddock-html fields in the
package.conf files.
To do this I had to make some changes:
- haddock-interfaces requires the value of $(datadir). We can't
just plug this in, because $(datadir) might change at install-time
(eg. a Windows installer can be placed anywhere, as can a Unix
binary .tar.gz distribution). The current trick is for the
compiler to splice in the value of $libdir in package.conf at
runtime. So we could extend this mechanism and tell the compiler
the value of $datadir via a command-line option, but that seems
ugly.
On Windows, $datadir==$libdir, so we don't need any changes:
package.conf still uses $libdir, and a Windows installation is
independent of its absolute location. Even 'make install' on
Windows should have this property.
On Unix:
- for 'make install' and in-place execution, we just use
absolute paths in package.conf
- for a binary dist, we generate a package.conf that refers
to $libdir and $datadir, and splice in the values at
install-time (distrib/Makefile-bin.in).
- Also, I renamed $libdir to $topdir to more closely reflect its
actual meaning. This is somewhat malicious in that it will flush
out all those clients using $libdir when they really shouldn't
be :-)
|
|
|
|
| |
-jN friendliness
|
|
|
|
| |
Add mk/fptools.css to $(SRC_DIST_FILES)
|
|
|
|
|
|
|
|
|
| |
ghc/mk/config.mk was never being included in ordinary Makefiles. It
was only included in the top-level fptools/Makefile for the purposes
of obtaining binary distribution settings.
This fixes that problem, and now as a side-effect $(GhcHasReadline)
will start working again.
|
|
|
|
| |
Check for shell scripts first - they don't exist on my Windows nightly build.
|
|
|
|
|
| |
* Added new target for creating *.bz2 source distributions
* Cleanup *.tar.gz / *.tar.bz2 when things go wrong
|
|
|
|
| |
Makefile.config is dead, so don't include it in SRC_DIST_FILES.
|
|
|
|
|
|
| |
Make sure "docs" and "dist" exactly once in SRC_DIST_DIRS.
MERGE TO STABLE
|
|
|
|
|
|
|
|
| |
SGML is dead, long live DocBook XML!
Note: The BuildRequires tags in the spec files are still incomplete
and the documentation about the DocBook tools needs to be updated,
too. Stay tuned...
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
<fanfare>Finally: Support for DocBook XML!</fanfare>
After endless frustrating hours, I came to the conclusion that using (Open)Jade
for DocBook XML is virtually impossible, there are *tons* of problems with it:
Wildly differing paths, incorrect stylesheets, broken catalogs at funny places,
broken wrapper scripts, missing support on Cygwin etc. >:-P * * *
So we follow the ubiquitous XSL hype and use xsltproc + DocBook XSL stylesheets
to transform DocBook XML to HTML and FO. From FO there are two routes to PDF and
PostScript: Either via FOP (preferred) or via PassiveTeX. Validation can be done
via xmllint using the new make target "validate". When PassiveTeX is available,
DVI can be generated, too. A new make target "no-chunks-html" is available for
generating an all-in-one HTML document. Currently there is no way to generate
plain text or RTF, but at least the former could easily be added.
Generating HTML works out-of-the-box on Cygwin now, but you will have to install
FOP for other formats, because there seems to be no standard package for it.
The HTML appearance can be controlled via CSS, but the current location of the
master stylesheet below fptools/mk is a bit debatable. Better suggestions are
welcome.
Currently there is still support for SGML documents, but it will be dropped when
all documents are converted to DocBook XML. The build system is complex enough
already with the support for a *single* kind of DocBook...
|
|
|
|
| |
Install MinGW32 gcc and perl.
|
|
|
|
| |
Retrofit Simon's DOCBOOK_CATALOG fix for platforms without DOCBOOK.
|
|
|
|
| |
build target should use '::' not ':'
|
|
|
|
|
|
| |
Reverted to previous version, too, because of wrong SGMLDocWays-handling, sorry,
but the build system should not be changed in a non-backwards-compatible way
easily...
|
|
|
|
| |
Support for nightly builds of utilities, esp. machines with no doc tools.
|
|
|
|
| |
wibble
|
|
|
|
|
| |
Add config.cache to DIST_CLEAN_FILES and remove autom4te.cache subdir
for every clean* target
|
|
|
|
|
|
|
|
|
| |
green-card => greencard
Green Card => GreenCard
Although Alastair prefers "Greencard", the library's name is
"Foreign.GreenCard", and unless we change this, too, "GreenCard" is
more consistent.
|
|
|
|
| |
Death to the acconfig.h hack!
|
|
|
|
| |
Ooops, forgot about a dozen references to configure.in... :-}
|
|
|
|
|
| |
Further updates to the hc-file-bundle target: ghc/compiler/utils is
required, and we should also keep ghc/rts/AutoApply.hc.
|
|
|
|
| |
Fixes to the hc-file-bundle target
|
|
|
|
| |
wibble to previous commit
|
|
|
|
| |
Prune more autoconf droppings from a source dist.
|
|
|
|
| |
Prune autoconf droppings from the source dist.
|
|
|
|
|
|
|
| |
- rearrange the file a little
- build a binary distribution from stage 2 by default, unless
overriden from the command line.
|
|
|
|
|
|
| |
Fixes to the hc-file-bundle
Submitted by: Urban Boquist <boquist@crt.se>
|
|
|
|
|
|
|
|
|
| |
Adapt the dist target a little to work with the nightly build's new
way of building source dists.
It now works by building a link tree to the build tree, and doing
'make dist' on the link tree, to avoid destroying the real build tree.
This just needed a couple of tweaks to the dist target to work.
|
|
|
|
| |
Towards a complete binary package.
|
|
|
|
| |
- If we're building GHC, then default to building+installing stage 2.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add support for gcc-style "make bootstrap" which will build the stage
1, 2 and 3 compilers in the same build tree.
The idea is to simplify building a stage 2 or 3 compiler (now you only
need one build tree), and also speed up the build: there's no need to
compile the libraries more than once, because the stage 1 libraries
are used for stages 2 & 3.
In ghc/compiler, the objects and .hi files are now placed in
subdirectories: ghc/compiler/stage1 has the stage1 objects,
ghc/compiler/stage2 has the stage2 objects, etc.
The story from the top-level (fptools) is this:
make all works as before (i.e. builds ghc (stage 1),
libraries, etc.)
make stage2 builds the stage 2 compiler
make stage3 builds the stage 3 compiler
make bootstrap does 'make all' followed by 'make stage2'
make bootstrap3 does 'make all' followed by 'make stage2; make stage3'
In ghc/compiler, the story is now:
make all works as before (i.e. builds stage 1 only)
make boot generate build dirs and dependencies for stage 1
make boot stage=N generate build dirs and dependencies for stage N
make stageN
make stage=N builds stage N compiler. Run it in-place using
./stageN/ghc-inplace.
I haven't decided what to do about 'make install' yet, and this still
needs documenting in the Building Guide. Also, you still get the same
$(GhcHcOpts) for each stage.
|