######################################################################### # # Copyright 2019 by Sean Conner. All Rights Reserved. # # This library is free software; you can redistribute it and/or modify it # under the terms of the GNU Lesser General Public License as published by # the Free Software Foundation; either version 3 of the License, or (at your # option) any later version. # # This library is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY # or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public # License for more details. # # You should have received a copy of the GNU Lesser General Public License # along with this library; if not, see <http://www.gnu.org/licenses/>. # # Comments, questions and criticisms can be sent to: sean@conman.org # ######################################################################## CC = c99 -Wall -Wextra -Wwrite-strings CFLAGS = -g -fPIC -Os LDFLAGS = -g -shared INSTALL = /usr/bin/install INSTALL_PROGRAM = $(INSTALL) INSTALL_DATA = $(INSTALL) -m 644 prefix = /usr/local libdir = $(prefix)/lib datarootdir = $(prefix)/share dataroot = $(datarootdir) LUA ?= lua LUA_VERSION := $(shell $(LUA) -e "print(_VERSION:match '^Lua (.*)')") LUADIR ?= $(dataroot)/lua/$(LUA_VERSION) LIBDIR ?= $(libdir)/lua/$(LUA_VERSION) ifneq ($(LUA_INCDIR),) override CFLAGS += -I$(LUA_INCDIR) endif PEG = peg # =================================================== .PHONY: install uninstall clean luacheck %.so : %.c $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $< $(LDLIBS) %.i : %.peg $(PEG) -o $@ $< install: mod_blog/html.so mod_blog/tumbler.so $(INSTALL) -d $(DESTDIR)$(LUADIR)/org/conman/app/GLV-1/handlers/blog $(INSTALL) -d $(DESTDIR)$(LUADIR)/org/conman/app/port70/handlers/blog $(INSTALL) -d $(DESTDIR)$(LIBDIR)/org/conman/app/port70/handlers/blog $(INSTALL) -d $(DESTDIR)$(LIBDIR)/org/conman/app/mod_blog $(INSTALL_DATA) GLV-1/handlers/*.lua $(DESTDIR)$(LUADIR)/org/conman/app/GLV-1/handlers/ $(INSTALL_DATA) GLV-1/handlers/blog/*.lua $(DESTDIR)$(LUADIR)/org/conman/app/GLV-1/handlers/blog/ $(INSTALL_DATA) port70/handlers/*.lua $(DESTDIR)$(LUADIR)/org/conman/app/port70/handlers/ $(INSTALL_DATA) port70/handlers/blog/*.lua $(DESTDIR)$(LUADIR)/org/conman/app/port70/handlers/blog/ $(INSTALL_DATA) *.lua $(DESTDIR)$(LUADIR)/org/conman/app/ $(INSTALL_PROGRAM) mod_blog/*.so $(DESTDIR)$(LIBDIR)/org/conman/app/mod_blog/ uninstall: $(RM) -r $(DESTDIR)$(LUADIR)/org/conman/app $(RM) -r $(DESTDIR)$(LIBDIR)/org/conman/app clean: $(RM) -r $(shell find . -name '*~') $(RM) -r $(shell find . -name '*.i') $(RM) -r $(shell find . -name '*.so') luacheck: luacheck $(shell find . -name '*.lua') mod_blog/html.so : override CFLAGS += -Wno-unused-label -Wno-unused-function mod_blog/html.so : mod_blog/html.c mod_blog/html.i mod_blog/tumbler.so : override CFLAGS += -I/home/spc/source/boston/src -D_GNU_SOURCE mod_blog/tumbler.so : mod_blog/tumbler.c /home/spc/source/boston/src/wbtum.c /home/spc/source/boston/src/timeutil.c $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ $(LDLIBS)