changeset 3310:2f14263b6a50 octave-forge

Restructure implicit rules for mex as implicit rules.
author pkienzle
date Sun, 15 Apr 2007 15:29:29 +0000
parents 3652e63240b6
children 5a1cc2386bad
files main/odepkg/src/Makefile
diffstat 1 files changed, 14 insertions(+), 27 deletions(-) [+]
line wrap: on
line diff
--- a/main/odepkg/src/Makefile	Thu Apr 12 01:16:39 2007 +0000
+++ b/main/odepkg/src/Makefile	Sun Apr 15 15:29:29 2007 +0000
@@ -78,12 +78,23 @@
   $(RADAUMXFILES) $(RADAU5MXFILES) $(RODASMXFILES) $(SEULEXMXFILES)
 ODEPKGDELETES = $(ODEPKGOBJECTS) $(ODEPKGMXFILES) *~ octave-core $(EXTERNALDIRS)
 
+%.o : %.f ; $(MKMEXFILE) -c $< -o $@
+%.o : %.c ; $(MKMEXFILE) -c $< -o $@
+%.mex : %.o ; $(MKMEXFILE) $^ -o $@
+
+
 all : $(EXTERNALDIRS) $(ODEPKGOBJECTS) $(ODEPKGMXFILES)
-.PHONY : all
+
+$(DOPRI5MXFILES) : $(DOPRI5OBJECTS)
+$(DOP853MXFILES) : $(DOP853OBJECTS)
+$(ODEXMXFILES) : $(ODEXOBJECTS)
+$(RADAUMXFILES) : $(RADAUOBJECTS)
+$(RADAU5MXFILES) : $(RADAU5OBJECTS)
+$(RODASMXFILES) : $(RODASOBJECTS)
+$(SEULEXMXFILES) : $(SEULEXOBJECTS)
 
 install :
 	@$(INSTALL) -d $(DESTDIR)$(MPATH)/odepkg
-.PHONY : install
 
 $(EXTERNALDIRS) :
 	@echo "Unpacking external packages: $(EXTERNALPACKS)"; \
@@ -91,35 +102,11 @@
 	@echo "Patching external packages: $(EXTERNALDIFFS)"; \
 	$(PATCHPROG) <$(EXTERNALDIFFS)
 
-%.o : $(EXTERNALDIRS) %.f
-	@echo "Compiling $@"; \
-	$(MKMEXFILE) -c $<
-
-%.o : %.c
-	@echo "Compiling $@"; \
-	$(MKMEXFILE) -c $<
-
-%.mex : %.o
-	@echo "Linking $(ODEPKGMXFILES)"; \
-	$(MKMEXFILE) $(DOPRI5OBJECTS) -o $(DOPRI5MXFILES)
-	$(MKMEXFILE) $(DOP853OBJECTS) -o $(DOP853MXFILES)
-	$(MKMEXFILE) $(ODEXOBJECTS)   -o $(ODEXMXFILES)
-	$(MKMEXFILE) $(RADAUOBJECTS)  -o $(RADAUMXFILES)
-	$(MKMEXFILE) $(RADAU5OBJECTS) -o $(RADAU5MXFILES)
-	$(MKMEXFILE) $(RODASOBJECTS)  -o $(RODASMXFILES)
-	$(MKMEXFILE) $(SEULEXOBJECTS) -o $(SEULEXMXFILES)
-
 clean :
 	@echo "Cleaning..."; \
 	$(RM) -fr $(ODEPKGDELETES)
-.PHONY : clean
 
-realclean : clean
+distclean realclean : clean
 	$(RM) -r configure config.status config.log autom4te.cache Makeconf
-.PHONY : realclean
-
-distclean : realclean
-.PHONY : distclean
 
 dist : all
-.PHONY : dist