From d1f17a2a24c36e8fcf36ad68ba7f3cd6ffc80211 Mon Sep 17 00:00:00 2001
From: Douglas Guptill <douglas.guptill@dal.ca>
Date: Thu, 21 May 2009 18:54:27 +0000
Subject: [PATCH] latest from p690

---
 CASCADE/Makefile  | 18 ++++++------------
 Makefile          | 41 +++++++++++++++++++++++++++--------------
 Makefile.p690     | 42 +++++++++++++++++++++++++++++++++++++++---
 NN/Makefile       | 27 ++++++++-------------------
 OCTREE/Makefile   | 25 +++++++------------------
 RESAMPLE/Makefile | 30 ++++++++++++++++++++++++++++++
 6 files changed, 117 insertions(+), 66 deletions(-)
 create mode 100644 RESAMPLE/Makefile

diff --git a/CASCADE/Makefile b/CASCADE/Makefile
index 1b92a14a..a5b04857 100644
--- a/CASCADE/Makefile
+++ b/CASCADE/Makefile
@@ -7,10 +7,8 @@
 #              Fax:+61-2-6249-5443
 #              email: Jean.Braun@anu.edu.au
 
+NAME=cascade
 include ../Makefile.p690
-#include ../Makefile.pathscale
-#include ../Makefile.ifort
-#include ../Makefile.macosx
 
 # object (all the interesting bits to do the erosion/sedimentation
 #         computations)
@@ -49,21 +47,17 @@ realft.o \
 nn_remove.o \
 del_flip.o
 
-# compile rule:
-#
-.f.o:
-	$(F77) $(FLAGS) -c $<
-
 # make the library
 #
-cascade: $(OBJECTS) $(UTILS)
-	ar -rv libcascade.a $(OBJECTS)
+all: lib$(NAME).a
+lib$(NAME).a: $(OBJECTS) $(UTILS)
+	ar -rv lib$(NAME).a $(OBJECTS)
 
 .PHONY: objclean
 objclean:
-	rm *.o
+	rm -f *.o $(NAME).compile
 
 .PHONY: clean
 clean: objclean
-	rm libcascade.a
+	rm -f lib$(NAME).a
 
diff --git a/Makefile b/Makefile
index b6d79814..2a257b41 100644
--- a/Makefile
+++ b/Makefile
@@ -1,9 +1,5 @@
-.SUFFIXES:.out .o .s .c .F .f .f90 .e .r .y .yr .ye .l .p .sh .csh .h
-
-include Makefile.pathscale
-#include Makefile.ifort
-#include Makefile.macosx
-
+NAME=douar
+include Makefile.p690
 
 OBJECTS = \
 module_threads.o \
@@ -75,15 +71,32 @@ wsmp_setup.o\
 DOUAR.o \
 write_global_output.o vrm.o
 
-.f90.o:
-	$(F90) $(FLAGS) $(INCLUDE) $*.f90
+OPTIONS=-bnoquiet
+subdirs:
+	cd CASCADE;   make all
+	cd NN;        make all
+	cd OCTREE;    make all
+	cd RESAMPLE;  make all
+
+.PHONY: objclean
+objclean:
+	cd CASCADE;   make $@
+	cd NN;        make $@
+	cd OCTREE;    make $@
+	cd RESAMPLE;  make $@
+	rm -f *.o *.mod $(COMPILE_OUT)
+
 
-.f.o:
-	$(F90) $(FLAGS) $*.f
+$(NAME): subdirs $(OBJECTS)
+	$(F90) $(FLAGS) $(OPTIONS) $(OBJECTS) $(LIBS) -o $(NAME) \
+ >$(NAME).link 2>&1
 
-.c.o:
-	$(CC) $(FLAGS) $*.c
 
-douar:	$(OBJECTS)
-	$(F90) -O3 $(OPTIONS) $(OBJECTS) $(LIBS) -o douarwsmp.exe
+.PHONY: clean
+clean: objclean
+	cd CASCADE;   make $@
+	cd NN;        make $@
+	cd OCTREE;    make $@
+	cd RESAMPLE;  make $@
+	rm -f $(NAME) $(NAME).link
 
diff --git a/Makefile.p690 b/Makefile.p690
index 1c567524..05a612ab 100644
--- a/Makefile.p690
+++ b/Makefile.p690
@@ -1,22 +1,58 @@
-FLAGS  = -O3 -qstrict -u -Q -qarch=auto -qtune=auto -qfloat=nomaf:nofold
+# Define our compilers
+#
 F90    = mpxlf90_r
 F77    = mpxlf_r
 CC     =  mpcc_r
+
+# Define compiler flags
+#
+# I would like to add -u here, but Wow!  Just try it.
+FFLAGS  = -O3 -qstrict -Q -qarch=auto -qtune=auto \
+-qfloat=nomaf:nofold 
+#*****check these*******
+CFLAGS  = -O3 -qstrict -Q -qarch=auto -qtune=auto \
+-qfloat=nomaf:nofold 
+
+# Define other things
+#
 # PGPLOT = /work/cedrict/Douar/PGI/PGPLOT 
 X11    = /usr/lpp/X11
 WSMP   = /home/beaumnt1/wsmp/lib/Power4
 
+# libs removed on p690...
+# -L$(PGPLOT) -lpgplot \
+# -lacml
 LIBS = \
 -LOCTREE -lOctree \
 -LNN -lnn \
 -LCASCADE -lcascade \
 -LRESAMPLE -lresample \
--L$(PGPLOT) -lpgplot \
 -L$(X11) -lX11 \
 -L$(WSMP) -lpwsmp64 \
--lpthread -lacml 
+-lpthread 
 
 # INCLUDE = -I$(MUMPS)/include
 
 OPTIONS = 
 
+# compile rules
+#
+COMPILE_OUT=$(NAME).compile
+.SUFFIXES:
+.SUFFIXES: .o .c .f .f90
+.f90.o:
+	@echo "--"                                               >>$(COMPILE_OUT) 2>&1
+	@echo "$(F90) -qsuffix=f=f90 $(FFLAGS) $(INCLUDE) -c $<" >>$(COMPILE_OUT) 2>&1
+	$(F90) -qsuffix=f=f90 $(FFLAGS) $(INCLUDE) -c $<  >>$(COMPILE_OUT) 2>&1
+
+.f.o:
+	@echo "--"                                   >>$(COMPILE_OUT) 2>&1
+	@echo "$(F77) -qsuffix=f=f $(FFLAGS) -c $<"  >>$(COMPILE_OUT) 2>&1
+	$(F77) -qsuffix=f=f $(FFLAGS) -c $<         >>$(COMPILE_OUT) 2>&1
+
+.c.o:
+	@echo "--"                                               >>$(COMPILE_OUT) 2>&1
+	@echo "$(CC) $(CFLAGS) -c $<"  >>$(COMPILE_OUT) 2>&1
+	$(CC) $(CFLAGS) -c $<         >>$(COMPILE_OUT) 2>&1
+
+
diff --git a/NN/Makefile b/NN/Makefile
index be0c7bc1..65d448c6 100644
--- a/NN/Makefile
+++ b/NN/Makefile
@@ -1,12 +1,5 @@
-.SUFFIXES:.out .o .s .c .F .f .f90 .e .r .y .yr .ye .l .p .sh .csh .h
-
+NAME=nn
 include ../Makefile.p690
-#include ../Makefile.pathscale
-#include ../Makefile.ifort
-#include ../Makefile.macosx
-
-NAME=libnn
-COMPILE_OUT=$(NAME).compile
 
 OBJECTS_NN = \
 delaun.o \
@@ -18,19 +11,15 @@ stack.o \
 stackpair.o \
 volume.o
 
-.f90.o:
-	$(F90) $(FLAGS) $(INCLUDE) -c $<  >>$(COMPILE_OUT) 2>&1
-
-.f.o:
-	$(F77) $(FLAGS) -c $<  >>$(COMPILE_OUT) 2>&1
-
-.c.o:
-	$(CC) $(FLAGS) -c $<  >>$(COMPILE_OUT) 2>&1
-
-$(NAME).a: $(OBJECTS_NN)
-	ar rcv $(NAME).a $(OBJECTS_NN)
+all: lib$(NAME).a
+lib$(NAME).a: $(OBJECTS_NN)
+	ar rcv lib$(NAME).a $(OBJECTS_NN)
 
 .PHONY: objclean
 objclean:
 	rm -f *.o $(COMPILE_OUT)
 
+.PHONY: clean
+clean: objclean
+	rm -f lib$(NAME).a
+
diff --git a/OCTREE/Makefile b/OCTREE/Makefile
index bdac842f..330c6938 100644
--- a/OCTREE/Makefile
+++ b/OCTREE/Makefile
@@ -1,13 +1,5 @@
-.SUFFIXES:
-.SUFFIXES:.out .o .s .c .F .f .f90 .e .r .y .yr .ye .l .p .sh .csh .h
-
-include ../Makefile.p690
-#include ../Makefile.pathscale
-#include ../Makefile.ifort
-#include ../Makefile.macosx
-
 NAME=Octree
-COMPILE_OUT=$(NAME).compile
+include ../Makefile.p690
 
 OBJECTS_OCTREE = \
 OctreeBitPlus.o \
@@ -19,19 +11,16 @@ number_sloan.o \
 profil_sloan.o \
 rootls_sloan.o
 
-.f90.o:
-	$(F90) -qsuffix=f=f90 $(FLAGS) $(INCLUDE) -c $<  >>$(COMPILE_OUT) 2>&1
 
-.f.o:
-	$(F77) $(FLAGS) -c $<  >>$(COMPILE_OUT) 2>&1
-
-.c.o:
-	$(CC) $(FLAGS) -c $<  >>$(COMPILE_OUT) 2>&1
-
-lib$(NAME).a:	$(OBJECTS_OCTREE)
+all: lib$(NAME).a
+lib$(NAME).a: $(OBJECTS_OCTREE)
 	ar rcv lib$(NAME).a $(OBJECTS_OCTREE)
 
 .PHONY: objclean
 objclean:
 	rm -f *.o $(COMPILE_OUT)
 
+.PHONY: clean
+clean: objclean
+	rm -f lib$(NAME).a
+
diff --git a/RESAMPLE/Makefile b/RESAMPLE/Makefile
new file mode 100644
index 00000000..a310095b
--- /dev/null
+++ b/RESAMPLE/Makefile
@@ -0,0 +1,30 @@
+NAME=resample
+include ../Makefile.p690
+
+OBJECTS = \
+curfit.o \
+fpback.o \
+fpbspl.o \
+fpchec.o \
+fpcurf.o \
+fpgivs.o \
+fprota.o \
+fpknot.o \
+fpdisc.o \
+fprati.o \
+curfit.o \
+splev.o \
+resample.o
+
+all: lib$(NAME).a
+lib$(NAME).a: $(OBJECTS)
+	ar rcv lib$(NAME).a $(OBJECTS)
+
+.PHONY: objclean
+objclean:
+	rm -f *.o $(NAME).compile
+
+.PHONY: clean
+clean: objclean
+	rm -f lib$(NAME).a
+
-- 
GitLab