[project @ 1997-09-05 09:16:19 by simonm]
[ghc-hetmet.git] / ghc / utils / parallel / Makefile
index 30718e6..094c5cb 100644 (file)
@@ -1,64 +1,49 @@
-TOP=../../..
-include $(TOP)/ghc/mk/ghc.mk
+TOP=../..
+include $(TOP)/mk/boilerplate.mk
 
-PROGRAMS = \
-  grs2gr gr2ps gr2qp qp2ps ghc-fool-sort ghc-unfool-sort gr2pe gr2java gr2jv \
-  gr2ap qp2ap gr2gran gr2RTS RTS2gran gran-extr gp-ext-imp tf avg-RTS SPLIT \
+PERL_PROGS = \
+  grs2gr gr2qp qp2ps ghc-fool-sort ghc-unfool-sort gr2pe gr2java \
+  qp2ap gr2RTS RTS2gran gran-extr gp-ext-imp tf avg-RTS SPLIT \
   AVG SN get_SN sn_filter ps-scale-y
 
-#MsubProgramScriptTarget(PerlCmd,grs2gr,grs2gr.pl,,)
-#MsubProgramScriptTarget(/usr/local/bin/bash,gr2ps,gr2ps.bash,,)
-#MsubProgramScriptTarget(PerlCmd,gr2qp,gr2qp.pl,,)
-#MsubProgramScriptTarget(PerlCmd,qp2ps,qp2ps.pl,,)
-#MsubProgramScriptTarget(PerlCmd,ghc-fool-sort,ghc-fool-sort.pl,,)
-#MsubProgramScriptTarget(PerlCmd,ghc-unfool-sort,ghc-unfool-sort.pl,,)
 
-#MsubProgramScriptTarget(PerlCmd,gr2pe,gr2pe.pl,,)
-#MsubProgramScriptTarget(PerlCmd,gr2java,gr2java.pl,,)
-#MsubProgramScriptTarget(/usr/local/bin/bash,gr2jv,gr2jv.bash,,)
-#MsubProgramScriptTarget(/usr/local/bin/bash,gr2ap,gr2ap.bash,,)
-#MsubProgramScriptTarget(PerlCmd,qp2ap,qp2ap.pl,,)
+BASH_PROGS = gr2ps gr2jv gr2ap gr2gran
 
-#MsubProgramScriptTarget(/usr/local/bin/bash,gr2gran,gr2gran.bash,,)
-#MsubProgramScriptTarget(PerlCmd,gr2RTS,gr2RTS.pl,,)
-#MsubProgramScriptTarget(PerlCmd,RTS2gran,RTS2gran.pl,,)
-#MsubProgramScriptTarget(PerlCmd,gran-extr,gran-extr.pl,,)
+#
+# One rule fits all, not particularly selective.
+#
+$(PERL_PROGS) : $(patsubst %,%.pl,$(PERL_PROGS))
+$(BASH_PROGS) : $(patsubst %,%.bash,$(BASH_PROGS))
 
-#MsubProgramScriptTarget(PerlCmd,gp-ext-imp,gp-ext-imp.pl,,)
-#MsubProgramScriptTarget(PerlCmd,tf,tf.pl,,)
-#MsubProgramScriptTarget(PerlCmd,avg-RTS,avg-RTS.pl,,)
-#MsubProgramScriptTarget(PerlCmd,SPLIT,SPLIT.pl,,)
-#MsubProgramScriptTarget(PerlCmd,AVG,AVG.pl,,)
-#MsubProgramScriptTarget(PerlCmd,SN,SN.pl,,)
-#MsubProgramScriptTarget(PerlCmd,get_SN,get_SN.pl,,)
-#MsubProgramScriptTarget(PerlCmd,sn_filter,sn_filter.pl,,)
-#MsubProgramScriptTarget(PerlCmd,ps-scale-y,ps-scale-y.pl,,)
 
-#MakeDirectories(install,    $(INSTSCRIPTDIR))
-#InstallScriptTarget(grs2gr, $(INSTSCRIPTDIR))
-#InstallScriptTarget(gr2ps,  $(INSTSCRIPTDIR))
-#InstallScriptTarget(gr2qp,  $(INSTSCRIPTDIR))
-#InstallScriptTarget(qp2ps,  $(INSTSCRIPTDIR))
-#InstallScriptTarget(ghc-fool-sort,  $(INSTSCRIPTDIR))
-#InstallScriptTarget(ghc-unfool-sort,$(INSTSCRIPTDIR))
+all :: $(PERL_PROGS) $(BASH_PROGS)
 
-#InstallScriptTarget(gr2pe,  $(INSTSCRIPTDIR))
-#InstallScriptTarget(gr2java,  $(INSTSCRIPTDIR))
-#InstallScriptTarget(gr2jv,  $(INSTSCRIPTDIR))
-#InstallScriptTarget(gr2ap,  $(INSTSCRIPTDIR))
-#InstallScriptTarget(qp2ap,  $(INSTSCRIPTDIR))
+$(PERL_PROGS) :
+       $(RM) $@
+       @echo Creating $@...
+       @echo "#!"$(PERL) > $@
+       @cat $@.pl >> $@
+       @chmod a+x $@
 
-#InstallScriptTarget(gr2gran,  $(INSTSCRIPTDIR))
-#InstallScriptTarget(gr2RTS,  $(INSTSCRIPTDIR))
-#InstallScriptTarget(RTS2gran,  $(INSTSCRIPTDIR))
-#InstallScriptTarget(gran-extr,  $(INSTSCRIPTDIR))
+$(BASH_PROGS) :
+       $(RM) $@
+       @echo Creating $@...
+       @echo "#!"$(BASH) > $@
+       @cat $@.bash >> $@
+       @chmod a+x $@
 
-#InstallScriptTarget(gp-ext-imp,  $(INSTSCRIPTDIR))
-#InstallScriptTarget(tf,  $(INSTSCRIPTDIR))
-#InstallScriptTarget(avg-RTS,  $(INSTSCRIPTDIR))
-#InstallScriptTarget(SPLIT,  $(INSTSCRIPTDIR))
-#InstallScriptTarget(AVG,  $(INSTSCRIPTDIR))
-#InstallScriptTarget(SN,  $(INSTSCRIPTDIR))
-#InstallScriptTarget(get_SN,  $(INSTSCRIPTDIR))
-#InstallScriptTarget(sn_filter,  $(INSTSCRIPTDIR))
-#InstallScriptTarget(ps-scale-y,  $(INSTSCRIPTDIR))
+#
+# You'll only get this with Parallel Haskell or 
+# GranSim..
+#
+ifeq "$(BuildingParallel)" "YES"
+INSTALL_SCRIPTS += $(BASH_PROGS) $(PERL_PROGS)
+else
+ifeq "$(BuildingGranSim)" "YES"
+INSTALL_SCRIPTS += $(BASH_PROGS) $(PERL_PROGS)
+endif
+endif
+
+CLEAN_FILES     += $(BASH_PROGS) $(PERL_PROGS)
+
+include $(TOP)/mk/target.mk