1. 14 Feb, 2002 1 commit
    • simonmar's avatar
      [project @ 2002-02-14 15:14:00 by simonmar] · 4f0e92bc
      simonmar authored
      Fixes to 'make install' in fptools/libraries.  We have to maintain the
      directory structure when installing the .hi files, rather than just
      dumping them in a single directory as we do for packages in
      fptools/hslibs.
      4f0e92bc
  2. 13 Feb, 2002 1 commit
    • simonmar's avatar
      [project @ 2002-02-13 10:40:24 by simonmar] · 9f66c841
      simonmar authored
      Fixes to SplitObjs: we now put the split object files in a
      subdirectory M_split/ rather than just M/, because the latter
      interacts badly with our hierarchical module structure.
      9f66c841
  3. 12 Feb, 2002 1 commit
    • simonmar's avatar
      [project @ 2002-02-12 15:17:13 by simonmar] · 2cc5b907
      simonmar authored
      Switch over to the new hierarchical libraries
      ---------------------------------------------
      
      This commit reorganises our libraries to use the new hierarchical
      module namespace extension.
      
      The basic story is this:
      
         - fptools/libraries contains the new hierarchical libraries.
           Everything in here is "clean", i.e. most deprecated stuff has
           been removed.
      
      	- fptools/libraries/base is the new base package
      	  (replacing "std") and contains roughly what was previously
      	  in std, lang, and concurrent, minus deprecated stuff.
      	  Things that are *not allowed* in libraries/base include:
      		Addr, ForeignObj, ByteArray, MutableByteArray,
      		_casm_, _ccall_, ``'', PrimIO
      
      	  For ByteArrays and MutableByteArrays we use UArray and
      	  STUArray/IOUArray respectively now.
      
      	  Modules previously called PrelFoo are now under
      	  fptools/libraries/GHC.  eg. PrelBase is now GHC.Base.
      
      	- fptools/libraries/haskell98 provides the Haskell 98 std.
      	  libraries (Char, IO, Numeric etc.) as a package.  This
      	  package is enabled by default.
      
      	- fptools/libraries/network is a rearranged version of
      	  the existing net package (the old package net is still
      	  available; see below).
      
      	- Other packages will migrate to fptools/libraries in
      	  due course.
      
           NB. you need to checkout fptools/libraries as well as
           fptools/hslibs now.  The nightly build scripts will need to be
           tweaked.
      
         - fptools/hslibs still contains (almost) the same stuff as before.
           Where libraries have moved into the new hierarchy, the hslibs
           version contains a "stub" that just re-exports the new version.
           The idea is that code will gradually migrate from fptools/hslibs
           into fptools/libraries as it gets cleaned up, and in a version or
           two we can remove the old packages altogether.
      
         - I've taken the opportunity to make some changes to the build
           system, ripping out the old hslibs Makefile stuff from
           mk/target.mk; the new package building Makefile code is in
           mk/package.mk (auto-included from mk/target.mk).
      
           The main improvement is that packages now register themselves at
           make boot time using ghc-pkg, and the monolithic package.conf
           in ghc/driver is gone.
      
           I've updated the standard packages but haven't tested win32,
           graphics, xlib, object-io, or OpenGL yet.  The Makefiles in
           these packages may need some further tweaks, and they'll need
           pkg.conf.in files added.
      
         - Unfortunately all this rearrangement meant I had to bump the
           interface-file version and create a bunch of .hi-boot-6 files :-(
      2cc5b907
  4. 30 Jan, 2002 1 commit
  5. 23 Jan, 2002 1 commit
  6. 09 Jan, 2002 1 commit
  7. 13 Dec, 2001 1 commit
    • simonmar's avatar
      [project @ 2001-12-13 11:42:47 by simonmar] · 6ecddfb5
      simonmar authored
      SUBDIR builds now happen *after* the current directory, to alleviate
      problems caused by the including of _hsc.o files in cbits libs - if
      the .hsc file was touched and we recurse into the cbits lib first,
      then hsc2hs got run in the cbits lib generating a bogus Foo.hs file in
      the current directory which refers to ../Foo_hsc.h.
      
      There was a comment saying that the SUBDIR builds were first because
      of something to do with building DLLs in hslibs, but didn't give any
      more detail.  If/when DLLs are re-enabled we can revisit this.
      6ecddfb5
  8. 16 Nov, 2001 1 commit
  9. 12 Nov, 2001 1 commit
    • simonmar's avatar
      [project @ 2001-11-12 14:13:35 by simonmar] · cc863b02
      simonmar authored
      Generate .a files into a temporary file before renaming to the actual
      target, to avoid a problem whereby 'ar' could leave a partially-built
      archive lying around.
      cc863b02
  10. 09 Nov, 2001 1 commit
    • sof's avatar
      [project @ 2001-11-09 16:29:06 by sof] · 41a551e3
      sof authored
      Auto-rule for INSTALL_DATAS and cbits/ header files:
      
      Nuke $(shell perl -e '...') use, i.e., don't load in and start up
      a 3M binary just to capitalise a word (which gets done twice per
      invocation of 'make').
      41a551e3
  11. 24 Oct, 2001 5 commits
  12. 23 Oct, 2001 2 commits
    • rrt's avatar
      [project @ 2001-10-23 14:41:12 by rrt] · 1125663a
      rrt authored
      Since you can only have one SGML_DOC per directory, may as well only
      have one INSTALL_SGML_DOC too. Remove the machinery for handling more
      than one.
      1125663a
    • rrt's avatar
      [project @ 2001-10-23 14:34:24 by rrt] · 60d2f334
      rrt authored
      Add rules for building and installing documentation. The story is as
      follows:
      
      GhcDocWays is set to a list of ways to build SGML docs (typically in
      build.mk; it defaults to empty).
      SGML_DOC = foo causes foo to be built for each way.
      SGML_INSTALL_DOCS are then installed for each way;
      INSTALL_DOCS are just taken as literal filenames.
      make install-docs causes documents to be installed.
      
      Also some other clearups:
      
      Use $(if ...) where a comment lamented its non-existence.
      Remove a comment about a "weird" use of exit which has vanished.
      60d2f334
  13. 03 Oct, 2001 1 commit
    • rrt's avatar
      [project @ 2001-10-03 15:30:57 by rrt] · d1bf2fc3
      rrt authored
      Dear Sigbjorn,
      
      next time you turn an
      
      if...endif
      
      into an
      
      if...else..endif
      
      remember to check the sense of the test. Sometimes, it needs to be reversed
      (there was in this case a hint in the surrounding code).
      
      Love,
      
      Reuben.
      d1bf2fc3
  14. 28 Sep, 2001 1 commit
    • sof's avatar
      [project @ 2001-09-28 23:36:50 by sof] · 53ededd0
      sof authored
      Provide finer-grained control for turning off mk/target.mk's
      'all', 'boot' and 'install' rules. i.e., instead of having
      the variable NO_ALL_TARGETS control the defnition of rules
      for all three, NO_ALL_TARGET, NO_BOOT_TARGET, and NO_INSTALL_TARGET
      lets you individually control which ones you don't want.
      
      Sub-projects (GC and HDirect, for example) have the need
      to turn off the 'boot' rule, which is what motivated this
      change.
      53ededd0
  15. 24 Sep, 2001 1 commit
  16. 08 Sep, 2001 1 commit
    • sof's avatar
      [project @ 2001-09-08 21:42:07 by sof] · ec2e177f
      sof authored
      Remove ugly special casing - if you want to turn off the
      default rule for GHCI_LIBRARY, set DONT_WANT_STD_GHCI_LIB_RULE
      to YES in your Makefile prior to including $(TOP)/mk/target.mk
      
      ghc/lib/std and hslibs/win32 both do this now on mingw32.
      ec2e177f
  17. 04 Sep, 2001 1 commit
  18. 17 Aug, 2001 1 commit
  19. 16 Aug, 2001 1 commit
    • sof's avatar
      [project @ 2001-08-16 22:54:24 by sof] · 48e7208b
      sof authored
      Death to GHC_INCLUDE_DIR (well, almost).
      
      - mk/target.mk: get rid off the abomination of having SRC_CC_OPTS include
        GHC_INCLUDE_DIR and GHC_RUNTIME_DIR for all fptools/ projects.
      - mk/suffix.mk: %.pp suffix rule no longer hardwires in the use of GHC_INCLUDE_DIR;
        just $(CPP_OPTS). ==> If you want GHC_INCLUDE_DIR on the include path, better
        add it to SRC_CPP_OPTS (say) at the point where you need it (ghc/compiler/Makefile
        and ghc/lib/std/Makefile do this now).
      - wipe out the use of -I$(GHC_INCLUDE_DIR) in HC_OPTS in hslibs/; not needed.
      - hslibs/mk/boilerplate.mk still define GHC_{IO_}INCLUDE_DIR for the purpose
        of using it when compiling .c files. It should be possible to get rid off it
        by having CC=$(HC), but I haven't imposed that change (yet).
      48e7208b
  20. 06 Aug, 2001 1 commit
  21. 04 Aug, 2001 1 commit
    • ken's avatar
      [project @ 2001-08-04 06:11:24 by ken] · 225d2513
      ken authored
      Changed
      
          # Add _hsc.c files to the cbits library
          SRCS += $(wildcard ../*_hsc.c)
      
      (which didn't work because SRCS has already been pattern-matched and
      substituted into other make variables to death by then) to
      
          # Add _hsc.c files to the cbits library
          C_SRCS += $(wildcard ../*_hsc.c)
      225d2513
  22. 30 Jul, 2001 1 commit
  23. 23 Jul, 2001 2 commits
    • ken's avatar
      [project @ 2001-07-23 22:52:33 by ken] · e99733ff
      ken authored
      Improved how we build library archives:
      
      On Digital UNIX (or where otherwise available), use the "Z" option to
      compress archives as we build them.
      
      On Digital UNIX 5 (or where otherwise available), use the "-input" option,
      which reads from a specified file the list of objects to archive.  This is
      significantly faster than piping the list of objects to xargs when the
      number of objects to archive is large.
      e99733ff
    • ken's avatar
      [project @ 2001-07-23 22:38:02 by ken] · 97e3db03
      ken authored
      Fixed: making dependencies for Haskell source files fails if -split-objs
      is present in $(HC_OPTS).
      97e3db03
  24. 16 Jul, 2001 3 commits
  25. 12 Jul, 2001 1 commit
  26. 11 Jul, 2001 1 commit
    • rrt's avatar
      [project @ 2001-07-11 13:24:24 by rrt] · ad428ac6
      rrt authored
      Replace GhcLibToolsHcOpts with FptoolsHcOpts, and make it apply to all
      programs in fptools, not just the hslibs tools. Now there's a way of
      controlling compiler flags to all programs in the tree, so
      
      a) by default all utilities should be optimised (before this was only done
      for one or two like hsc2hs)
      
      b) if you're doing development work, you can get everything built quicker by
      setting FptoolsHcOpts appropriately
      ad428ac6
  27. 05 Jul, 2001 1 commit
    • rrt's avatar
      [project @ 2001-07-05 13:01:14 by rrt] · 90fdf6fe
      rrt authored
      Change HSLIB to PACKAGE and HSLIB_DEPS to PACKAGE_DEPS, which makes more
      sense. Also unbreaks the build system, in an arse-about-face sort of way
      (or, if you prefer, cart-before-horse).
      90fdf6fe
  28. 04 Jul, 2001 2 commits
  29. 11 Jun, 2001 2 commits
  30. 24 May, 2001 1 commit