# --- C COMPILER --- CC = gcc CFLAGS = -Wall -pedantic -O3 -I $(HSRCDIR) -I $(ISRCDIR) # --------------------------- # --- END USER PARAMETERS --- # --------------------------- # ------------------------------------ # ------------------------------------ # ------------------------------------ # ------------------------------------ # ------------------------------------ # DON'T TOUCH ANYTHING BELOW THIS LINE # ------------------------------------ # ------------------------------------ # ------------------------------------ # ------------------------------------ # ------------------------------------ EXEFILE = $(SCI2CDIR)/$(EXEFILENAME) SWSRCS = \ $(CSRCDIR)/doubleComplex.c \ $(CSRCDIR)/floatComplex.c \ $(CSRCDIR)/RealToComplex.c \ $(CSRCDIR)/conj.c \ $(CSRCDIR)/disp.c \ $(CSRCDIR)/ones.c \ $(CSRCDIR)/zeros.c \ $(CSRCDIR)/OpApex.c \ $(CSRCDIR)/OpColon.c \ $(CSRCDIR)/OpDotStar.c \ $(CSRCDIR)/OpDotHat.c \ $(CSRCDIR)/OpDotSlash.c \ $(CSRCDIR)/OpEqual.c \ $(CSRCDIR)/OpPlus.c \ $(CSRCDIR)/OpMinus.c \ $(CSRCDIR)/OpStar.c \ $(CSRCDIR)/OpIns.c \ $(CSRCDIR)/OpExt.c \ $(CSRCDIR)/OpRc.c \ $(CSRCDIR)/OpCc.c \ $(CSRCDIR)/cos.c \ $(CSRCDIR)/cosh.c \ $(CSRCDIR)/sin.c \ $(CSRCDIR)/sinh.c \ $(CSRCDIR)/FileManagement.c \ $(CSRCDIR)/OpLogLt.c \ $(CSRCDIR)/OpLogGt.c \ $(CSRCDIR)/OpLogGe.c \ $(CSRCDIR)/OpLogLe.c \ $(CSRCDIR)/OpLogEq.c \ $(CSRCDIR)/OpLogOr.c \ $(CSRCDIR)/OpLogAnd.c \ $(CSRCDIR)/Find.c \ $(CSRCDIR)/ConvertPrecision.c \ $(CSRCDIR)/SCI2Cfft.c \ $(CSRCDIR)/SCI2Cconvol.c \ $(CSRCDIR)/ssqrts.c \ $(CSRCDIR)/dsqrts.c \ $(CSRCDIR)/csqrts.c \ $(CSRCDIR)/zsqrts.c \ $(CSRCDIR)/ssqrta.c \ $(CSRCDIR)/dsqrta.c \ $(CSRCDIR)/csqrta.c \ $(CSRCDIR)/zsqrta.c \ $(CSRCDIR)/sabss.c \ $(CSRCDIR)/dabss.c \ $(CSRCDIR)/cabss.c \ $(CSRCDIR)/zabss.c \ $(CSRCDIR)/sabsa.c \ $(CSRCDIR)/dabsa.c \ $(CSRCDIR)/cabsa.c \ $(CSRCDIR)/zabsa.c \ $(CSRCDIR)/sexps.c \ $(CSRCDIR)/dexps.c \ $(CSRCDIR)/cexps.c \ $(CSRCDIR)/zexps.c \ $(CSRCDIR)/sexpa.c \ $(CSRCDIR)/dexpa.c \ $(CSRCDIR)/cexpa.c \ $(CSRCDIR)/zexpa.c SWOBJS = $(SWSRCS:.c=.o) # --------------- # --- TARGETS --- # --------------- compileexecute: $(SWOBJS) @echo " " @echo "============================" @echo "Generation of the executable" @echo "============================" $(CC) $(CFLAGS) $(SWOBJS) $(SCI2CDIR)/*.c -o $(EXEFILE) @echo " " @echo "==============" @echo "Executing code" @echo "==============" $(EXEFILE) clean: @echo " " @echo "=============================" @echo "Removing only exe + obj files" @echo "=============================" rm -rf $(EXEFILE) rm -rf $(SWOBJS) @echo " " cleanexe: @echo " " @echo "==========================" @echo "Removing only the exe file" @echo "==========================" rm -rf $(EXEFILE) @echo " " # how to compile object code .o from C source files .c (general rule) # space between -o and filename for SUN make .c.o: $(CC) $(CFLAGS) -c -o $(@) $< # Make object code from source swobjs: $(SWOBJS)