After some patching I was finally able to install ghc-2.06 on Linux.
The things which needed some massaging:

   * Hen-and-egg-problem (reported)

----------------------------------------------------------------------
*** fptools/happy/src/Makefile.orig     Thu Sep 11 16:57:29 1997
--- fptools/happy/src/Makefile  Fri Sep 12 13:52:29 1997
***************
*** 6,12 ****
  
  HAPPY    = happy
  
! MKDEPENDHS      := $(HC)
  
  VERSION  = 1.3
  HAPPYLIB = $(FPTOOLS_TOP_ABS)/happy/templates
--- 6,15 ----
  
  HAPPY    = happy
  
! HC=$(WithGhcHc)
! ifeq ($(Ghc2_0),NO)
! MKDEPENDHS      = $(MKDEPENDHS_1_2)
! endif
  
  VERSION  = 1.3
  HAPPYLIB = $(FPTOOLS_TOP_ABS)/happy/templates
***************
*** 37,42 ****
--- 40,52 ----
  Parser_HC_OPTS = -Onot
  
  boot :: Version.hs
+ 
+ boot ::
+       if [ -d $(FPTOOLS_TOP)/ghc ]; then \
+               (cd $(FPTOOLS_TOP)/ghc/utils/unlit && $(MAKE) boot); \
+               (cd $(FPTOOLS_TOP)/ghc/driver && $(MAKE) boot); \
+               (cd $(FPTOOLS_TOP)/ghc/utils/mkdependHS && $(MAKE) boot) \
+       fi 
  
  Version.hs : Makefile
        @-rm -f Version.hs-NEW
----------------------------------------------------------------------

   * touch fptools/ghc/docs/users_guide/2-06-notes.lit (reported)

   * The bash-2.01 seems to differ in some funny places from earlier
     ones, resulting in trouble during installation: Some $$ need
     protection and there seems to be a superfluous break. Patch:

----------------------------------------------------------------------
*** fptools/mk/target.mk.~1~    Thu Sep  4 21:48:49 1997
--- fptools/mk/target.mk        Mon Sep 15 12:10:37 1997
***************
*** 487,496 ****
            else \
                echo "#! $(PERL)" > $$i.tmp ; \
           fi; \
!          echo $$"bindir='$(bindir)';"                            >> $$i.tmp ; \
!          echo $$"libdir='$(libdir)';"                            >> $$i.tmp ; \
!          echo $$"libexecdir='$(libexecdir)';"                    >> $$i.tmp ; \
!          echo $$"datadir='$(datadir)';"                          >> $$i.tmp ; \
           cat  $$i                                                >> $$i.tmp ; \
           echo $(INSTALL_PROGRAM) $(filter-out -s,$(INSTALL_OPTS)) $$i.tmp 
$(bindir)/$$i ;    \
           $(INSTALL_PROGRAM) $(filter-out -s,$(INSTALL_BIN_OPTS)) $$i.tmp 
$(bindir)/$$i ; \
--- 487,496 ----
            else \
                echo "#! $(PERL)" > $$i.tmp ; \
           fi; \
!          echo '$$'"bindir='$(bindir)';"                          >> $$i.tmp ; \
!          echo '$$'"libdir='$(libdir)';"                          >> $$i.tmp ; \
!          echo '$$'"libexecdir='$(libexecdir)';"                  >> $$i.tmp ; \
!          echo '$$'"datadir='$(datadir)';"                        >> $$i.tmp ; \
           cat  $$i                                                >> $$i.tmp ; \
           echo $(INSTALL_PROGRAM) $(filter-out -s,$(INSTALL_OPTS)) $$i.tmp 
$(bindir)/$$i ;    \
           $(INSTALL_PROGRAM) $(filter-out -s,$(INSTALL_BIN_OPTS)) $$i.tmp 
$(bindir)/$$i ; \
***************
*** 522,531 ****
           else \
                echo "#! $(PERL)" > $$i.tmp ; \
           fi; \
!          echo $$"bindir='$(bindir)';"                            >> $$i.tmp ; \
!          echo $$"libdir='$(libdir)';"                            >> $$i.tmp ; \
!          echo $$"libexecdir='$(libexecdir)';"                    >> $$i.tmp ; \
!          echo $$"datadir='$(datadir)';"                          >> $$i.tmp ; \
           cat  $$i                                                >> $$i.tmp ; \
           echo $(INSTALL_PROGRAM) $(INSTALL_OPTS) $$i $(libdir) ;    \
           $(INSTALL_PROGRAM) $(INSTALL_OPTS) $$i.tmp $(libdir)/$$i ; \
--- 522,531 ----
           else \
                echo "#! $(PERL)" > $$i.tmp ; \
           fi; \
!          echo '$$'"bindir='$(bindir)';"                            >> $$i.tmp ; \
!          echo '$$'"libdir='$(libdir)';"                            >> $$i.tmp ; \
!          echo '$$'"libexecdir='$(libexecdir)';"                    >> $$i.tmp ; \
!          echo '$$'"datadir='$(datadir)';"                          >> $$i.tmp ; \
           cat  $$i                                                >> $$i.tmp ; \
           echo $(INSTALL_PROGRAM) $(INSTALL_OPTS) $$i $(libdir) ;    \
           $(INSTALL_PROGRAM) $(INSTALL_OPTS) $$i.tmp $(libdir)/$$i ; \
***************
*** 557,566 ****
           else \
                echo "#! $(PERL)" > $$i.tmp ; \
           fi; \
!          echo $$"bindir='$(bindir)';"                            >> $$i.tmp ; \
!          echo $$"libdir='$(libdir)';"                            >> $$i.tmp ; \
!          echo $$"libexecdir='$(libexecdir)';"                    >> $$i.tmp ; \
!          echo $$"datadir='$(datadir)';"                          >> $$i.tmp ; \
           cat  $$i                                                >> $$i.tmp ; \
           echo $(INSTALL_PROGRAM) $(INSTALL_OPTS) $$i $(libexecdir) ;    \
           $(INSTALL_PROGRAM) $(INSTALL_OPTS) $$i.tmp $(libexecdir)/$$i ; \
--- 557,566 ----
           else \
                echo "#! $(PERL)" > $$i.tmp ; \
           fi; \
!          echo '$$'"bindir='$(bindir)';"                            >> $$i.tmp ; \
!          echo '$$'"libdir='$(libdir)';"                            >> $$i.tmp ; \
!          echo '$$'"libexecdir='$(libexecdir)';"                    >> $$i.tmp ; \
!          echo '$$'"datadir='$(datadir)';"                          >> $$i.tmp ; \
           cat  $$i                                                >> $$i.tmp ; \
           echo $(INSTALL_PROGRAM) $(INSTALL_OPTS) $$i $(libexecdir) ;    \
           $(INSTALL_PROGRAM) $(INSTALL_OPTS) $$i.tmp $(libexecdir)/$$i ; \
***************
*** 585,592 ****
                case $$i in \
                  *.a) \
                    $(INSTALL_DATA) $(INSTALL_OPTS) $$i $(libdir); \
!                   $(RANLIB) $(libdir)/`basename $$i` ; \
!                   break;; \
                  *) \
                    $(INSTALL_DATA) $(INSTALL_OPTS) $$i $(libdir); \
                esac; \
--- 585,591 ----
                case $$i in \
                  *.a) \
                    $(INSTALL_DATA) $(INSTALL_OPTS) $$i $(libdir); \
!                   $(RANLIB) $(libdir)/`basename $$i` ;; \
                  *) \
                    $(INSTALL_DATA) $(INSTALL_OPTS) $$i $(libdir); \
                esac; \
----------------------------------------------------------------------

   * Trying "make user.info" in fptools/ghc/docs/users_guide failed
     with some "lit2texi: error(s) from prefilter pipe"-messages.

The snapshot is available in the FTP directory

   ftp://ftp.informatik.uni-muenchen.de/pub/local/pms/

HP version coming soon...

-- 
Sven Panne                                        Tel.: +49/89/2178-2235
LMU, Institut fuer Informatik                     FAX : +49/89/2178-2211
LFE Programmier- und Modellierungssprachen              Oettingenstr. 67
mailto:[EMAIL PROTECTED]            D-80538 Muenchen
http://www.pms.informatik.uni-muenchen.de/mitarbeiter/panne

Reply via email to