From 0c894052f9080aba762dae3364bb073800981039 Mon Sep 17 00:00:00 2001 From: Jeffrey Armstrong Date: Fri, 8 May 2020 08:12:23 -0400 Subject: Added a GNU makefile --- makefile.gnu | 145 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 145 insertions(+) create mode 100644 makefile.gnu diff --git a/makefile.gnu b/makefile.gnu new file mode 100644 index 0000000..73b2df8 --- /dev/null +++ b/makefile.gnu @@ -0,0 +1,145 @@ +# +# Automagically generated by Approximatrix Simply Fortran 3.11 +# +FC?="gfortran" +CC?="/usr/bin/gcc" +AR?="ar" +WRC?="windres" +RM=rm -f + +DESTDIR?=/usr/local + +IDIR= + +LDIR= + + +OPTFLAGS= -g + +SPECIALFLAGS=$(IDIR) + +RCFLAGS=-O coff + +PRJ_FFLAGS= + +PRJ_CFLAGS= + +PRJ_LFLAGS=-lssl -lcrypto -lpthread -ldl + +FFLAGS=$(SPECIALFLAGS) $(OPTFLAGS) $(PRJ_FFLAGS) -Jmodules + +CFLAGS=$(SPECIALFLAGS) $(OPTFLAGS) $(PRJ_CFLAGS) + +build: + mkdir -p $@ + +modules: + mkdir -p $@ + +.PHONY: all clean + +/home/jeff/Workspace/gemini-fortran/build/dumb_render.o: dumb_render.f90 /home/jeff/Workspace/gemini-fortran/modules/render.mod | modules build + @echo Compiling dumb_render.f90 + @$(FC) -c -o "/home/jeff/Workspace/gemini-fortran/build/dumb_render.o" $(FFLAGS) "dumb_render.f90" +/home/jeff/Workspace/gemini-fortran/modules/dumb_render.mod : | modules /home/jeff/Workspace/gemini-fortran/build/dumb_render.o + +/home/jeff/Workspace/gemini-fortran/build/escape.o: escape.f90 | modules build + @echo Compiling escape.f90 + @$(FC) -c -o "/home/jeff/Workspace/gemini-fortran/build/escape.o" $(FFLAGS) "escape.f90" +/home/jeff/Workspace/gemini-fortran/modules/escaper.mod : | modules /home/jeff/Workspace/gemini-fortran/build/escape.o + +/home/jeff/Workspace/gemini-fortran/build/files.o: files.f90 /home/jeff/Workspace/gemini-fortran/modules/layout.mod | modules build + @echo Compiling files.f90 + @$(FC) -c -o "/home/jeff/Workspace/gemini-fortran/build/files.o" $(FFLAGS) "files.f90" +/home/jeff/Workspace/gemini-fortran/modules/file_handling.mod : | modules /home/jeff/Workspace/gemini-fortran/build/files.o + +/home/jeff/Workspace/gemini-fortran/build/history.o: history.f90 | modules build + @echo Compiling history.f90 + @$(FC) -c -o "/home/jeff/Workspace/gemini-fortran/build/history.o" $(FFLAGS) "history.f90" +/home/jeff/Workspace/gemini-fortran/modules/history.mod : | modules /home/jeff/Workspace/gemini-fortran/build/history.o + +/home/jeff/Workspace/gemini-fortran/build/jessl.o: jessl.f90 | modules build + @echo Compiling jessl.f90 + @$(FC) -c -o "/home/jeff/Workspace/gemini-fortran/build/jessl.o" $(FFLAGS) "jessl.f90" +/home/jeff/Workspace/gemini-fortran/modules/jessl.mod : | modules /home/jeff/Workspace/gemini-fortran/build/jessl.o + +/home/jeff/Workspace/gemini-fortran/build/layout.o: layout.f90 /home/jeff/Workspace/gemini-fortran/modules/render.mod | modules build + @echo Compiling layout.f90 + @$(FC) -c -o "/home/jeff/Workspace/gemini-fortran/build/layout.o" $(FFLAGS) "layout.f90" +/home/jeff/Workspace/gemini-fortran/modules/layout.mod : | modules /home/jeff/Workspace/gemini-fortran/build/layout.o + +/home/jeff/Workspace/gemini-fortran/build/main.o: main.F90 /home/jeff/Workspace/gemini-fortran/modules/request.mod /home/jeff/Workspace/gemini-fortran/modules/dumb_render.mod /home/jeff/Workspace/gemini-fortran/modules/gemini_protocol.mod /home/jeff/Workspace/gemini-fortran/modules/layout.mod /home/jeff/Workspace/gemini-fortran/modules/file_handling.mod /home/jeff/Workspace/gemini-fortran/modules/history.mod | modules build + @echo Compiling main.F90 + @$(FC) -c -o "/home/jeff/Workspace/gemini-fortran/build/main.o" $(FFLAGS) "main.F90" + +/home/jeff/Workspace/gemini-fortran/build/network.o: network.F90 | modules build + @echo Compiling network.F90 + @$(FC) -c -o "/home/jeff/Workspace/gemini-fortran/build/network.o" $(FFLAGS) "network.F90" +/home/jeff/Workspace/gemini-fortran/modules/network.mod : | modules /home/jeff/Workspace/gemini-fortran/build/network.o + +/home/jeff/Workspace/gemini-fortran/build/protocol.o: protocol.f90 /home/jeff/Workspace/gemini-fortran/modules/request.mod /home/jeff/Workspace/gemini-fortran/modules/file_handling.mod | modules build + @echo Compiling protocol.f90 + @$(FC) -c -o "/home/jeff/Workspace/gemini-fortran/build/protocol.o" $(FFLAGS) "protocol.f90" +/home/jeff/Workspace/gemini-fortran/modules/gemini_protocol.mod : | modules /home/jeff/Workspace/gemini-fortran/build/protocol.o + +/home/jeff/Workspace/gemini-fortran/build/render.o: render.f90 /home/jeff/Workspace/gemini-fortran/modules/escaper.mod | modules build + @echo Compiling render.f90 + @$(FC) -c -o "/home/jeff/Workspace/gemini-fortran/build/render.o" $(FFLAGS) "render.f90" +/home/jeff/Workspace/gemini-fortran/modules/render.mod : | modules /home/jeff/Workspace/gemini-fortran/build/render.o + +/home/jeff/Workspace/gemini-fortran/build/request.o: request.f90 /home/jeff/Workspace/gemini-fortran/modules/network.mod /home/jeff/Workspace/gemini-fortran/modules/jessl.mod | modules build + @echo Compiling request.f90 + @$(FC) -c -o "/home/jeff/Workspace/gemini-fortran/build/request.o" $(FFLAGS) "request.f90" +/home/jeff/Workspace/gemini-fortran/modules/request.mod : | modules /home/jeff/Workspace/gemini-fortran/build/request.o + +clean: + @echo Deleting /home/jeff/Workspace/gemini-fortran/build/dumb_render.o and related files + @$(RM) "/home/jeff/Workspace/gemini-fortran/build/dumb_render.o" "/home/jeff/Workspace/gemini-fortran/modules/dumb_render.mod" "/home/jeff/Workspace/gemini-fortran/modules/dumb_render.smod" + @echo Deleting /home/jeff/Workspace/gemini-fortran/build/escape.o and related files + @$(RM) "/home/jeff/Workspace/gemini-fortran/build/escape.o" "/home/jeff/Workspace/gemini-fortran/modules/escaper.mod" "/home/jeff/Workspace/gemini-fortran/modules/escaper.smod" + @echo Deleting /home/jeff/Workspace/gemini-fortran/build/files.o and related files + @$(RM) "/home/jeff/Workspace/gemini-fortran/build/files.o" "/home/jeff/Workspace/gemini-fortran/modules/file_handling.mod" "/home/jeff/Workspace/gemini-fortran/modules/file_handling.smod" + @echo Deleting /home/jeff/Workspace/gemini-fortran/build/history.o and related files + @$(RM) "/home/jeff/Workspace/gemini-fortran/build/history.o" "/home/jeff/Workspace/gemini-fortran/modules/history.mod" "/home/jeff/Workspace/gemini-fortran/modules/history.smod" + @echo Deleting /home/jeff/Workspace/gemini-fortran/build/jessl.o and related files + @$(RM) "/home/jeff/Workspace/gemini-fortran/build/jessl.o" "/home/jeff/Workspace/gemini-fortran/modules/jessl.mod" "/home/jeff/Workspace/gemini-fortran/modules/jessl.smod" + @echo Deleting /home/jeff/Workspace/gemini-fortran/build/layout.o and related files + @$(RM) "/home/jeff/Workspace/gemini-fortran/build/layout.o" "/home/jeff/Workspace/gemini-fortran/modules/layout.mod" "/home/jeff/Workspace/gemini-fortran/modules/layout.smod" + @echo Deleting /home/jeff/Workspace/gemini-fortran/build/main.o and related files + @$(RM) "/home/jeff/Workspace/gemini-fortran/build/main.o" + @echo Deleting /home/jeff/Workspace/gemini-fortran/build/network.o and related files + @$(RM) "/home/jeff/Workspace/gemini-fortran/build/network.o" "/home/jeff/Workspace/gemini-fortran/modules/network.mod" "/home/jeff/Workspace/gemini-fortran/modules/network.smod" + @echo Deleting /home/jeff/Workspace/gemini-fortran/build/protocol.o and related files + @$(RM) "/home/jeff/Workspace/gemini-fortran/build/protocol.o" "/home/jeff/Workspace/gemini-fortran/modules/gemini_protocol.mod" "/home/jeff/Workspace/gemini-fortran/modules/gemini_protocol.smod" + @echo Deleting /home/jeff/Workspace/gemini-fortran/build/render.o and related files + @$(RM) "/home/jeff/Workspace/gemini-fortran/build/render.o" "/home/jeff/Workspace/gemini-fortran/modules/render.mod" "/home/jeff/Workspace/gemini-fortran/modules/render.smod" + @echo Deleting /home/jeff/Workspace/gemini-fortran/build/request.o and related files + @$(RM) "/home/jeff/Workspace/gemini-fortran/build/request.o" "/home/jeff/Workspace/gemini-fortran/modules/request.mod" "/home/jeff/Workspace/gemini-fortran/modules/request.smod" + @echo Deleting build/test.o and related files + @$(RM) "build/test.o" + @echo Deleting build/test_ssl.o and related files + @$(RM) "build/test_ssl.o" + @echo Deleting directory modules + @rmdir modules + @echo Deleting directory build + @rmdir build + @echo Deleting lr87 + @$(RM) "lr87" + +lr87: /home/jeff/Workspace/gemini-fortran/build/dumb_render.o /home/jeff/Workspace/gemini-fortran/build/escape.o /home/jeff/Workspace/gemini-fortran/build/files.o /home/jeff/Workspace/gemini-fortran/build/history.o /home/jeff/Workspace/gemini-fortran/build/jessl.o /home/jeff/Workspace/gemini-fortran/build/layout.o /home/jeff/Workspace/gemini-fortran/build/main.o /home/jeff/Workspace/gemini-fortran/build/network.o /home/jeff/Workspace/gemini-fortran/build/protocol.o /home/jeff/Workspace/gemini-fortran/build/render.o /home/jeff/Workspace/gemini-fortran/build/request.o + @echo Generating lr87 + @$(FC) -o "lr87" /home/jeff/Workspace/gemini-fortran/build/dumb_render.o /home/jeff/Workspace/gemini-fortran/build/escape.o /home/jeff/Workspace/gemini-fortran/build/files.o /home/jeff/Workspace/gemini-fortran/build/history.o /home/jeff/Workspace/gemini-fortran/build/jessl.o /home/jeff/Workspace/gemini-fortran/build/layout.o /home/jeff/Workspace/gemini-fortran/build/main.o /home/jeff/Workspace/gemini-fortran/build/network.o /home/jeff/Workspace/gemini-fortran/build/protocol.o /home/jeff/Workspace/gemini-fortran/build/render.o /home/jeff/Workspace/gemini-fortran/build/request.o $(LDIR) $(PRJ_LFLAGS) + +all: lr87 + +$(DESTDIR)/bin/lr87: lr87 + mkdir -p $(DESTDIR)/bin + cp lr87 $(DESTDIR)/bin +$(DESTDIR)/share/lr87/LICENSE.txt: LICENSE.txt + mkdir -p $(DESTDIR)/share/lr87 + cp LICENSE.txt $(DESTDIR)/share/lr87 +$(DESTDIR)/share/lr87/LICENSE.txt: README.md + mkdir -p $(DESTDIR)/share/lr87 + cp README.md $(DESTDIR)/share/lr87 + +install: $(DESTDIR)/bin/lr87 $(DESTDIR)/share/lr87/LICENSE.txt $(DESTDIR)/share/lr87/README.md -- cgit v1.2.3