# --- C COMPILER --- CC = gcc CFLAGS = -Wall -pedantic -O3 -I $(HSRCDIR) -I $(ISRCDIR) -lm # --------------------------- # --- END USER PARAMETERS --- # --------------------------- # ------------------------------------ # ------------------------------------ # ------------------------------------ # ------------------------------------ # ------------------------------------ # DON'T TOUCH ANYTHING BELOW THIS LINE # ------------------------------------ # ------------------------------------ # ------------------------------------ # ------------------------------------ # ------------------------------------ EXEFILE = $(SCI2CDIR)/$(EXEFILENAME) SWSRCS = \ $(CSRCDIR)/doubleComplex.c \ $(CSRCDIR)/floatComplex.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)/smeana.c \ $(CSRCDIR)/dmeana.c \ $(CSRCDIR)/cmeana.c \ $(CSRCDIR)/zmeana.c \ $(CSRCDIR)/slog1ps.c \ $(CSRCDIR)/dlog1ps.c \ $(CSRCDIR)/slog1pa.c \ $(CSRCDIR)/dlog1pa.c \ $(CSRCDIR)/dfinda.c \ $(CSRCDIR)/sfinda.c \ $(CSRCDIR)/cfinda.c \ $(CSRCDIR)/zfinda.c\ $(CSRCDIR)/dfind2da.c \ $(CSRCDIR)/sfind2da.c \ $(CSRCDIR)/cfind2da.c \ $(CSRCDIR)/zfind2da.c\ $(CSRCDIR)/scats.c \ $(CSRCDIR)/scata.c \ $(CSRCDIR)/dcats.c \ $(CSRCDIR)/dcata.c \ $(CSRCDIR)/ccats.c \ $(CSRCDIR)/ccata.c \ $(CSRCDIR)/zcats.c \ $(CSRCDIR)/zcata.c \ $(CSRCDIR)/sdisps.c \ $(CSRCDIR)/sdispa.c \ $(CSRCDIR)/ddisps.c \ $(CSRCDIR)/ddispa.c\ $(CSRCDIR)/cdisps.c \ $(CSRCDIR)/cdispa.c\ $(CSRCDIR)/zdisps.c \ $(CSRCDIR)/zdispa.c\ $(CSRCDIR)/cmuls.c\ $(CSRCDIR)/cmula.c \ $(CSRCDIR)/dmuls.c\ $(CSRCDIR)/dmula.c \ $(CSRCDIR)/smuls.c\ $(CSRCDIR)/smula.c \ $(CSRCDIR)/zmuls.c\ $(CSRCDIR)/zmula.c \ $(CSRCDIR)/cadds.c\ $(CSRCDIR)/cadda.c \ $(CSRCDIR)/dadds.c\ $(CSRCDIR)/dadda.c \ $(CSRCDIR)/sadds.c\ $(CSRCDIR)/sadda.c \ $(CSRCDIR)/zadds.c\ $(CSRCDIR)/zadda.c\ $(CSRCDIR)/cdiffs.c\ $(CSRCDIR)/cdiffa.c \ $(CSRCDIR)/ddiffs.c\ $(CSRCDIR)/ddiffa.c \ $(CSRCDIR)/sdiffs.c\ $(CSRCDIR)/sdiffa.c \ $(CSRCDIR)/zdiffs.c\ $(CSRCDIR)/zdiffa.c \ $(CSRCDIR)/cfilla.c\ $(CSRCDIR)/dfilla.c\ $(CSRCDIR)/sfilla.c\ $(CSRCDIR)/zfilla.c \ $(CSRCDIR)/conesa.c\ $(CSRCDIR)/donesa.c\ $(CSRCDIR)/sonesa.c\ $(CSRCDIR)/zonesa.c\ $(CSRCDIR)/crdivs.c\ $(CSRCDIR)/crdiva.c \ $(CSRCDIR)/drdivs.c\ $(CSRCDIR)/drdiva.c \ $(CSRCDIR)/srdivs.c\ $(CSRCDIR)/srdiva.c \ $(CSRCDIR)/zrdivs.c\ $(CSRCDIR)/zrdiva.c\ $(CSRCDIR)/cldivs.c\ $(CSRCDIR)/cldiva.c \ $(CSRCDIR)/dldivs.c\ $(CSRCDIR)/dldiva.c \ $(CSRCDIR)/sldivs.c\ $(CSRCDIR)/sldiva.c \ $(CSRCDIR)/zldivs.c\ $(CSRCDIR)/zldiva.c\ $(CSRCDIR)/cconjs.c\ $(CSRCDIR)/cconja.c\ $(CSRCDIR)/zconjs.c\ $(CSRCDIR)/zconja.c\ $(CSRCDIR)/ceyea.c\ $(CSRCDIR)/deyea.c\ $(CSRCDIR)/seyea.c\ $(CSRCDIR)/zeyea.c\ $(CSRCDIR)/ctracea.c\ $(CSRCDIR)/dtracea.c\ $(CSRCDIR)/stracea.c\ $(CSRCDIR)/ztracea.c\ $(CSRCDIR)/srowmeana.c \ $(CSRCDIR)/drowmeana.c \ $(CSRCDIR)/crowmeana.c \ $(CSRCDIR)/zrowmeana.c \ $(CSRCDIR)/scolumnmeana.c \ $(CSRCDIR)/dcolumnmeana.c \ $(CSRCDIR)/ccolumnmeana.c \ $(CSRCDIR)/zcolumnmeana.c \ $(CSRCDIR)/ssuma.c \ $(CSRCDIR)/dsuma.c \ $(CSRCDIR)/csuma.c \ $(CSRCDIR)/zsuma.c \ $(CSRCDIR)/srowsuma.c \ $(CSRCDIR)/drowsuma.c \ $(CSRCDIR)/crowsuma.c \ $(CSRCDIR)/zrowsuma.c \ $(CSRCDIR)/scolumnsuma.c \ $(CSRCDIR)/dcolumnsuma.c \ $(CSRCDIR)/ccolumnsuma.c \ $(CSRCDIR)/zcolumnsuma.c\ $(CSRCDIR)/cmulma.c\ $(CSRCDIR)/dmulma.c\ $(CSRCDIR)/smulma.c\ $(CSRCDIR)/zmulma.c\ $(CSRCDIR)/svariancea.c \ $(CSRCDIR)/dvariancea.c \ $(CSRCDIR)/cvariancea.c \ $(CSRCDIR)/zvariancea.c \ $(CSRCDIR)/srowvariancea.c \ $(CSRCDIR)/drowvariancea.c \ $(CSRCDIR)/crowvariancea.c \ $(CSRCDIR)/zrowvariancea.c \ $(CSRCDIR)/scolumnvariancea.c \ $(CSRCDIR)/dcolumnvariancea.c \ $(CSRCDIR)/ccolumnvariancea.c \ $(CSRCDIR)/zcolumnvariancea.c \ $(CSRCDIR)/cpows.c \ $(CSRCDIR)/cpowa.c \ $(CSRCDIR)/dpows.c \ $(CSRCDIR)/dpowa.c \ $(CSRCDIR)/spows.c \ $(CSRCDIR)/spowa.c \ $(CSRCDIR)/zpows.c \ $(CSRCDIR)/zpowa.c \ $(CSRCDIR)/ctransposea.c \ $(CSRCDIR)/dtransposea.c \ $(CSRCDIR)/stransposea.c \ $(CSRCDIR)/ztransposea.c \ $(CSRCDIR)/clogs.c \ $(CSRCDIR)/cloga.c \ $(CSRCDIR)/dlogs.c \ $(CSRCDIR)/dloga.c \ $(CSRCDIR)/slogs.c \ $(CSRCDIR)/sloga.c \ $(CSRCDIR)/zlogs.c \ $(CSRCDIR)/zloga.c \ $(CSRCDIR)/cpythags.c\ $(CSRCDIR)/dpythags.c \ $(CSRCDIR)/spythags.c\ $(CSRCDIR)/zpythags.c \ $(CSRCDIR)/cacoss.c \ $(CSRCDIR)/cacosa.c \ $(CSRCDIR)/dacoss.c \ $(CSRCDIR)/dacosa.c \ $(CSRCDIR)/sacoss.c \ $(CSRCDIR)/sacosa.c \ $(CSRCDIR)/zacoss.c \ $(CSRCDIR)/zacosa.c \ $(CSRCDIR)/catans.c \ $(CSRCDIR)/catana.c \ $(CSRCDIR)/datans.c \ $(CSRCDIR)/datana.c \ $(CSRCDIR)/satans.c \ $(CSRCDIR)/satana.c \ $(CSRCDIR)/zatans.c \ $(CSRCDIR)/zatana.c \ $(CSRCDIR)/dlnp1m1s.c \ $(CSRCDIR)/slnp1m1s.c\ $(CSRCDIR)/cacoshs.c \ $(CSRCDIR)/cacosha.c \ $(CSRCDIR)/dacoshs.c \ $(CSRCDIR)/dacosha.c \ $(CSRCDIR)/sacoshs.c \ $(CSRCDIR)/sacosha.c \ $(CSRCDIR)/zacoshs.c \ $(CSRCDIR)/zacosha.c\ $(CSRCDIR)/crdivma.c \ $(CSRCDIR)/drdivma.c \ $(CSRCDIR)/srdivma.c \ $(CSRCDIR)/zrdivma.c\ $(CSRCDIR)/cldivma.c \ $(CSRCDIR)/dldivma.c \ $(CSRCDIR)/sldivma.c \ $(CSRCDIR)/zldivma.c \ $(CSRCDIR)/cinverma.c \ $(CSRCDIR)/dinverma.c \ $(CSRCDIR)/sinverma.c \ $(CSRCDIR)/zinverma.c \ $(CSRCDIR)/cexps.c \ $(CSRCDIR)/dexps.c \ $(CSRCDIR)/sexps.c \ $(CSRCDIR)/zexps.c \ $(CSRCDIR)/cexpa.c \ $(CSRCDIR)/dexpa.c \ $(CSRCDIR)/sexpa.c \ $(CSRCDIR)/zexpa.c \ $(CSRCDIR)/cexpma.c \ $(CSRCDIR)/dexpma.c \ $(CSRCDIR)/sexpma.c \ $(CSRCDIR)/zexpma.c \ $(CSRCDIR)/dfrexps.c \ $(CSRCDIR)/sfrexps.c \ $(CSRCDIR)/cinfnorma.c \ $(CSRCDIR)/dinfnorma.c \ $(CSRCDIR)/sinfnorma.c \ $(CSRCDIR)/zinfnorma.c \ $(CSRCDIR)/csigns.c \ $(CSRCDIR)/csigna.c \ $(CSRCDIR)/dsigns.c \ $(CSRCDIR)/dsigna.c \ $(CSRCDIR)/ssigns.c \ $(CSRCDIR)/ssigna.c \ $(CSRCDIR)/zsigns.c \ $(CSRCDIR)/zsigna.c \ $(CSRCDIR)/cdeterma.c \ $(CSRCDIR)/ddeterma.c \ $(CSRCDIR)/sdeterma.c \ $(CSRCDIR)/zdeterma.c \ $(CSRCDIR)/csins.c \ $(CSRCDIR)/csina.c \ $(CSRCDIR)/dsins.c \ $(CSRCDIR)/dsina.c \ $(CSRCDIR)/ssins.c \ $(CSRCDIR)/ssina.c \ $(CSRCDIR)/zsins.c \ $(CSRCDIR)/zsina.c \ $(CSRCDIR)/csinhs.c \ $(CSRCDIR)/csinha.c \ $(CSRCDIR)/dsinhs.c \ $(CSRCDIR)/dsinha.c \ $(CSRCDIR)/ssinhs.c \ $(CSRCDIR)/ssinha.c \ $(CSRCDIR)/zsinhs.c \ $(CSRCDIR)/zsinha.c \ $(CSRCDIR)/ccoshs.c \ $(CSRCDIR)/ccosha.c \ $(CSRCDIR)/dcoshs.c \ $(CSRCDIR)/dcosha.c \ $(CSRCDIR)/scoshs.c \ $(CSRCDIR)/scosha.c \ $(CSRCDIR)/zcoshs.c \ $(CSRCDIR)/zcosha.c\ $(CSRCDIR)/ccoss.c \ $(CSRCDIR)/ccosa.c \ $(CSRCDIR)/dcoss.c \ $(CSRCDIR)/dcosa.c \ $(CSRCDIR)/scoss.c \ $(CSRCDIR)/scosa.c \ $(CSRCDIR)/zcoss.c \ $(CSRCDIR)/zcosa.c \ $(CSRCDIR)/casins.c \ $(CSRCDIR)/casina.c \ $(CSRCDIR)/dasins.c \ $(CSRCDIR)/dasina.c \ $(CSRCDIR)/sasins.c \ $(CSRCDIR)/sasina.c \ $(CSRCDIR)/zasins.c \ $(CSRCDIR)/zasina.c \ $(CSRCDIR)/casinhs.c \ $(CSRCDIR)/casinha.c \ $(CSRCDIR)/dasinhs.c \ $(CSRCDIR)/dasinha.c \ $(CSRCDIR)/sasinhs.c \ $(CSRCDIR)/sasinha.c \ $(CSRCDIR)/zasinhs.c \ $(CSRCDIR)/zasinha.c \ $(CSRCDIR)/datan2s.c \ $(CSRCDIR)/datan2a.c \ $(CSRCDIR)/satan2s.c \ $(CSRCDIR)/satan2a.c \ $(CSRCDIR)/catanhs.c \ $(CSRCDIR)/catanha.c \ $(CSRCDIR)/datanhs.c \ $(CSRCDIR)/datanha.c \ $(CSRCDIR)/satanhs.c \ $(CSRCDIR)/satanha.c \ $(CSRCDIR)/zatanhs.c \ $(CSRCDIR)/zatanha.c \ $(CSRCDIR)/clog10s.c \ $(CSRCDIR)/clog10a.c \ $(CSRCDIR)/dlog10s.c \ $(CSRCDIR)/dlog10a.c \ $(CSRCDIR)/slog10s.c \ $(CSRCDIR)/slog10a.c \ $(CSRCDIR)/zlog10s.c \ $(CSRCDIR)/zlog10a.c \ $(CSRCDIR)/ctans.c \ $(CSRCDIR)/ctana.c \ $(CSRCDIR)/dtans.c \ $(CSRCDIR)/dtana.c \ $(CSRCDIR)/stans.c \ $(CSRCDIR)/stana.c \ $(CSRCDIR)/ztans.c \ $(CSRCDIR)/ztana.c \ $(CSRCDIR)/ctanhs.c \ $(CSRCDIR)/ctanha.c \ $(CSRCDIR)/dtanhs.c \ $(CSRCDIR)/dtanha.c \ $(CSRCDIR)/stanhs.c \ $(CSRCDIR)/stanha.c \ $(CSRCDIR)/ztanhs.c \ $(CSRCDIR)/ztanha.c \ $(CSRCDIR)/cisnans.c \ $(CSRCDIR)/cisnana.c \ $(CSRCDIR)/disnans.c \ $(CSRCDIR)/disnana.c \ $(CSRCDIR)/sisnans.c \ $(CSRCDIR)/sisnana.c \ $(CSRCDIR)/zisnans.c \ $(CSRCDIR)/zisnana.c \ $(CSRCDIR)/cconva.c \ $(CSRCDIR)/dconva.c \ $(CSRCDIR)/sconva.c \ $(CSRCDIR)/zconva.c \ $(CSRCDIR)/cconv2da.c \ $(CSRCDIR)/dconv2da.c \ $(CSRCDIR)/sconv2da.c \ $(CSRCDIR)/zconv2da.c \ $(CSRCDIR)/sfftma.c \ $(CSRCDIR)/dfftma.c \ $(CSRCDIR)/cfftma.c \ $(CSRCDIR)/zfftma.c \ $(CSRCDIR)/dfft2.c \ $(CSRCDIR)/dfftbi.c \ $(CSRCDIR)/dfftmx.c \ $(CSRCDIR)/fft842.c \ $(CSRCDIR)/r2tx.c \ $(CSRCDIR)/r4tx.c \ $(CSRCDIR)/r8tx.c \ $(CSRCDIR)/sifftma.c \ $(CSRCDIR)/difftma.c \ $(CSRCDIR)/cifftma.c \ $(CSRCDIR)/zifftma.c \ $(CSRCDIR)/difft2.c \ $(CSRCDIR)/difftbi.c \ $(CSRCDIR)/difftmx.c \ $(CSRCDIR)/ifft842.c \ $(CSRCDIR)/ir2tx.c \ $(CSRCDIR)/ir4tx.c \ $(CSRCDIR)/ir8tx.c \ $(CSRCDIR)/cchola.c \ $(CSRCDIR)/dchols.c \ $(CSRCDIR)/dchola.c \ $(CSRCDIR)/schols.c \ $(CSRCDIR)/schola.c \ $(CSRCDIR)/zchola.c \ $(CSRCDIR)/cleva.c \ $(CSRCDIR)/dleva.c \ $(CSRCDIR)/sleva.c \ $(CSRCDIR)/zleva.c \ $(CSRCDIR)/cleva2.c \ $(CSRCDIR)/dleva2.c \ $(CSRCDIR)/sleva2.c \ $(CSRCDIR)/zleva2.c \ $(CSRCDIR)/cimplicitLists.c \ $(CSRCDIR)/dimplicitLists.c \ $(CSRCDIR)/simplicitLists.c \ $(CSRCDIR)/zimplicitLists.c \ $(CSRCDIR)/czerosa.c \ $(CSRCDIR)/dzerosa.c \ $(CSRCDIR)/szerosa.c \ $(CSRCDIR)/zzerosa.c \ $(CSRCDIR)/cspeca.c \ $(CSRCDIR)/dspeca.c \ $(CSRCDIR)/sspeca.c \ $(CSRCDIR)/zspeca.c \ $(CSRCDIR)/cspec2a.c \ $(CSRCDIR)/dspec2a.c \ $(CSRCDIR)/sspec2a.c \ $(CSRCDIR)/zspec2a.c \ $(CSRCDIR)/smina.c \ $(CSRCDIR)/smaxa.c \ $(CSRCDIR)/srowmina.c \ $(CSRCDIR)/srowmaxa.c \ $(CSRCDIR)/scolumnmina.c \ $(CSRCDIR)/scolumnmaxa.c \ $(CSRCDIR)/dmina.c \ $(CSRCDIR)/dmaxa.c \ $(CSRCDIR)/drowmina.c \ $(CSRCDIR)/drowmaxa.c \ $(CSRCDIR)/dcolumnmina.c \ $(CSRCDIR)/dcolumnmaxa.c \ $(CSRCDIR)/cpowma.c \ $(CSRCDIR)/dpowma.c \ $(CSRCDIR)/spowma.c \ $(CSRCDIR)/zpowma.c \ $(CSRCDIR)/cfftshifta.c \ $(CSRCDIR)/dfftshifta.c \ $(CSRCDIR)/sfftshifta.c \ $(CSRCDIR)/zfftshifta.c \ $(CSRCDIR)/crowfftshifta.c \ $(CSRCDIR)/drowfftshifta.c \ $(CSRCDIR)/srowfftshifta.c \ $(CSRCDIR)/zrowfftshifta.c \ $(CSRCDIR)/ccolumnfftshifta.c \ $(CSRCDIR)/dcolumnfftshifta.c \ $(CSRCDIR)/scolumnfftshifta.c \ $(CSRCDIR)/zcolumnfftshifta.c \ $(CSRCDIR)/cceils.c \ $(CSRCDIR)/cceila.c \ $(CSRCDIR)/dceils.c \ $(CSRCDIR)/dceila.c \ $(CSRCDIR)/sceils.c \ $(CSRCDIR)/sceila.c \ $(CSRCDIR)/zceils.c \ $(CSRCDIR)/zceila.c \ $(CSRCDIR)/cfixs.c \ $(CSRCDIR)/cfixa.c \ $(CSRCDIR)/dfixs.c \ $(CSRCDIR)/dfixa.c \ $(CSRCDIR)/sfixs.c \ $(CSRCDIR)/sfixa.c \ $(CSRCDIR)/zfixs.c \ $(CSRCDIR)/zfixa.c \ $(CSRCDIR)/cfloors.c \ $(CSRCDIR)/cfloora.c \ $(CSRCDIR)/dfloors.c \ $(CSRCDIR)/dfloora.c \ $(CSRCDIR)/sfloors.c \ $(CSRCDIR)/sfloora.c \ $(CSRCDIR)/zfloors.c \ $(CSRCDIR)/zfloora.c \ $(CSRCDIR)/cints.c \ $(CSRCDIR)/cinta.c \ $(CSRCDIR)/dints.c \ $(CSRCDIR)/dinta.c \ $(CSRCDIR)/sints.c \ $(CSRCDIR)/sinta.c \ $(CSRCDIR)/zints.c \ $(CSRCDIR)/zinta.c \ $(CSRCDIR)/crounds.c \ $(CSRCDIR)/crounda.c \ $(CSRCDIR)/drounds.c \ $(CSRCDIR)/drounda.c \ $(CSRCDIR)/srounds.c \ $(CSRCDIR)/srounda.c \ $(CSRCDIR)/zrounds.c \ $(CSRCDIR)/zrounda.c # $(CSRCDIR)/RealToComplex.c \ # $(CSRCDIR)/OpIns.c \ # $(CSRCDIR)/OpExt.c \ # $(CSRCDIR)/FileManagement.c \ # $(CSRCDIR)/OpLogLt.c \ # $(CSRCDIR)/OpLogGt.c \ # $(CSRCDIR)/OpLogGe.c \ # $(CSRCDIR)/OpLogLe.c \ # $(CSRCDIR)/OpLogOr.c \ # $(CSRCDIR)/OpLogAnd.c \ # $(CSRCDIR)/ConvertPrecision.c \ # $(CSRCDIR)/clog1ps.c \ # $(CSRCDIR)/zlog1ps.c \ # $(CSRCDIR)/clog1pa.c \ # $(CSRCDIR)/zlog1pa.c SWOBJS = $(SWSRCS:.c=.o) # --------------- # --- TARGETS --- # --------------- compileexecute: $(SWOBJS) @echo " " @echo "============================" @echo "Generation of the executable" @echo "============================" $(CC) $(CFLAGS) $(SWOBJS) *.c -llapack -lblas -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)