Generates the script to run the compiling.

def _make_exe(linklibs, identifier, verbose):
    """Generates the script to run the compiling."""
    linktxt = "$(LIBS) " if linklibs else ""
    redirect = "" if verbose else " > /dev/null"
    base = """
$(EXENAME): $(OBJSF90)
	-rm $(EXENAME) 2> /dev/null
	echo -n "Linking... "{2}
	-$(F90) $(LDFLAGS) -o $(EXENAME) $(OBJSF90) {0}>> $(LOG) 2>> $(LOG)
	echo "done."{2}
	if test -e $(EXENAME); then echo "Produced executable: $(EXENAME)"{2}; else $(SHOW_LOG); echo "Error."; fi

$(OBJSF90): %.o: %.f90
	echo -n "Compiling: $^... "{2}
	-$(F90) -c $(FFLAGS) $^ >> $(LOG) 2>> $(LOG)
	echo "done."{2}

{1}.so: $(SLIBF90)
	-rm {1}.so 2> /dev/null
	echo -n "Creating shared library..."{2}
	-$(F90) -shared -fPIC $(FFLAGS) -o {1}.so {0}$(SLIBF90) >> $(LOG) 2>> $(LOG)
	echo "done."{2}

{1}.a: $(SLIBF90)
	echo -n "Creating linked library..."{2}
	ar ru $@ $?
	ranlib $@
	echo "done."{2}

clean:
	-mv fpy_auxiliary.mod fpy_auxiliary.modt 2> /dev/null
	-mv fpy_auxiliary.o fpy_auxiliary.ot 2> /dev/null
	-mv fortpy.o fortpy.ot
	-mv fortpy.mod fortpy.modt
	-rm *.o *.mod *.i90 $(EXENAME) initializeTree.so 2> /dev/null
	-mv fpy_auxiliary.modt fpy_auxiliary.mod 2> /dev/null
	-mv fpy_auxiliary.ot fpy_auxiliary.o 2> /dev/null
	-mv fortpy.ot fortpy.o
	-mv fortpy.modt fortpy.mod
remake: clean
	-rm *.o *.mod *.i90 $(EXENAME) {1}.so
"""
    return base.format(linktxt, identifier, redirect)