######################################################################### # # 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 = gcc -std=c99 CFLAGS = -g -Wall -Wextra -pedantic LDFLAGS = -g -shared override CFLAGS += -fPIC -D_GNU_SOURCE INSTALL = /usr/bin/install INSTALL_PROGRAM = $(INSTALL) INSTALL_DATA = $(INSTALL) -m 644 prefix = /usr/local datarootdir = $(prefix)/share exec_prefix = $(prefix) bindir = $(exec_prefix)/bin libdir = $(exec_prefix)/lib LUA ?= lua LUA_VERSION := $(shell $(LUA) -e "print(_VERSION:match '^Lua (.*)')") LUADIR ?= $(datarootdir)/lua/$(LUA_VERSION) LIBDIR ?= $(libdir)/lua/$(LUA_VERSION) BINDIR ?= $(exec_prefix)/bin ifneq ($(LUA_INCDIR),) override CFLAGS += -I$(LUA_INCDIR) endif # =================================================== %.so : %.c $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $< $(LDLIBS) # =================================================== .PHONY: all luacheck clean all: port70/getuserdir.so port70/setugid.so luacheck: luacheck $(shell find . -name '*.lua') clean: $(RM) $(shell find . -name '*~') $(RM) $(shell find . -name '*.so') install: all $(INSTALL) -d $(DESTDIR)$(BINDIR) $(INSTALL) -d $(DESTDIR)$(LIBDIR)/port70 $(INSTALL) -d $(DESTDIR)$(LUADIR)/port70 $(INSTALL) -d $(DESTDIR)$(LUADIR)/port70/handlers $(INSTALL_DATA) port70/*.lua $(DESTDIR)$(LUADIR)/port70 $(INSTALL_DATA) port70/handlers/*.lua $(DESTDIR)$(LUADIR)/port70/handlers $(INSTALL_PROGRAM) port70/*.so $(DESTDIR)$(LIBDIR)/port70 $(INSTALL_PROGRAM) port70.lua $(DESTDIR)$(BINDIR)/port70 uninstall: $(RM) -r $(DESTDIR)$(LUADIR)/port70 $(RM) -r $(DESTDIR)$(LIBDIR)/port70 $(RM) -r $(DESTDIR)$(BINDIR)/port70