# # 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= ZIPFILE=lr87-src-$(shell date +%Y%m%d) 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 build/binary.o: binary.f90 | modules build @echo Compiling binary.f90 @$(FC) -c -o build/binary.o $(FFLAGS) binary.f90 modules/binary.mod : | modules build/binary.o build/dumb_binary.o: dumb_binary.f90 | modules build @echo Compiling dumb_binary.f90 @$(FC) -c -o build/dumb_binary.o $(FFLAGS) dumb_binary.f90 modules/dumb_binary.mod : | modules build/dumb_binary.o build/dumb_render.o: dumb_render.f90 modules/render.mod | modules build @echo Compiling dumb_render.f90 @$(FC) -c -o "build/dumb_render.o" $(FFLAGS) "dumb_render.f90" modules/dumb_render.mod : | modules build/dumb_render.o build/escape.o: escape.f90 | modules build @echo Compiling escape.f90 @$(FC) -c -o "build/escape.o" $(FFLAGS) "escape.f90" modules/escaper.mod : | modules build/escape.o build/files.o: files.f90 modules/layout.mod | modules build @echo Compiling files.f90 @$(FC) -c -o "build/files.o" $(FFLAGS) "files.f90" modules/file_handling.mod : | modules build/files.o build/history.o: history.f90 | modules build @echo Compiling history.f90 @$(FC) -c -o "build/history.o" $(FFLAGS) "history.f90" modules/history.mod : | modules build/history.o build/jessl.o: jessl.f90 | modules build @echo Compiling jessl.f90 @$(FC) -c -o "build/jessl.o" $(FFLAGS) "jessl.f90" modules/jessl.mod : | modules build/jessl.o build/layout.o: layout.f90 modules/render.mod | modules build @echo Compiling layout.f90 @$(FC) -c -o "build/layout.o" $(FFLAGS) "layout.f90" modules/layout.mod : | modules build/layout.o build/main.o: main.F90 modules/request.mod modules/dumb_binary.mod modules/dumb_render.mod modules/gemini_protocol.mod modules/layout.mod modules/file_handling.mod modules/history.mod | modules build @echo Compiling main.F90 @$(FC) -c -o "build/main.o" $(FFLAGS) "main.F90" build/network.o: network.F90 | modules build @echo Compiling network.F90 @$(FC) -c -o "build/network.o" $(FFLAGS) "network.F90" modules/network.mod : | modules build/network.o build/protocol.o: protocol.f90 modules/request.mod modules/file_handling.mod | modules build @echo Compiling protocol.f90 @$(FC) -c -o "build/protocol.o" $(FFLAGS) "protocol.f90" modules/gemini_protocol.mod : | modules build/protocol.o build/render.o: render.f90 modules/escaper.mod | modules build @echo Compiling render.f90 @$(FC) -c -o "build/render.o" $(FFLAGS) "render.f90" modules/render.mod : | modules build/render.o build/request.o: request.f90 modules/network.mod modules/jessl.mod | modules build @echo Compiling request.f90 @$(FC) -c -o "build/request.o" $(FFLAGS) "request.f90" modules/request.mod : | modules build/request.o clean: @echo Deleting build/binary.o and related files @$(RM) "build/binary.o" "modules/binary.mod" "modules/binary.smod" @echo Deleting build/dumb_binary.o and related files @$(RM) "build/dumb_binary.o" "modules/dumb_binary.mod" "modules/dumb_binary.smod" @echo Deleting build/dumb_render.o and related files @$(RM) "build/dumb_render.o" "modules/dumb_render.mod" "modules/dumb_render.smod" @echo Deleting build/escape.o and related files @$(RM) "build/escape.o" "modules/escaper.mod" "modules/escaper.smod" @echo Deleting build/files.o and related files @$(RM) "build/files.o" "modules/file_handling.mod" "modules/file_handling.smod" @echo Deleting build/history.o and related files @$(RM) "build/history.o" "modules/history.mod" "modules/history.smod" @echo Deleting build/jessl.o and related files @$(RM) "build/jessl.o" "modules/jessl.mod" "modules/jessl.smod" @echo Deleting build/layout.o and related files @$(RM) "build/layout.o" "modules/layout.mod" "modules/layout.smod" @echo Deleting build/main.o and related files @$(RM) "build/main.o" @echo Deleting build/network.o and related files @$(RM) "build/network.o" "modules/network.mod" "modules/network.smod" @echo Deleting build/protocol.o and related files @$(RM) "build/protocol.o" "modules/gemini_protocol.mod" "modules/gemini_protocol.smod" @echo Deleting build/render.o and related files @$(RM) "build/render.o" "modules/render.mod" "modules/render.smod" @echo Deleting build/request.o and related files @$(RM) "build/request.o" "modules/request.mod" "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: build/binary.o build/dumb_binary.o build/dumb_render.o build/escape.o build/files.o build/history.o build/jessl.o build/layout.o build/main.o build/network.o build/protocol.o build/render.o build/request.o @echo Generating lr87 @$(FC) -o "lr87" build/binary.o build/dumb_binary.o build/dumb_render.o build/escape.o build/files.o build/history.o build/jessl.o build/layout.o build/main.o build/network.o build/protocol.o build/render.o 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/README.md: README.md mkdir -p $(DESTDIR)/share/lr87 cp README.md $(DESTDIR)/share/lr87 $(ZIPFILE): zip -9 $(ZIPFILE) *.f90 makefile.gnu LICENSE.txt README.md gemini.prj gemini-windows.prj -x tes*.f90 zip: $(ZIPFILE) install: $(DESTDIR)/bin/lr87 $(DESTDIR)/share/lr87/LICENSE.txt $(DESTDIR)/share/lr87/README.md