mirror of
https://github.com/troglobit/finit.git
synced 2026-10-02 05:52:48 +07:00
Old event system has been replaced with a more generic condition concept. The idea is that finit plugins may provide arbitrary conditions that services may specify as dependencies that they require to run. In order to accomodate this, the service management has been redesigned to use a state machine.
54 lines
1.1 KiB
Makefile
54 lines
1.1 KiB
Makefile
# Plugin based services architecture for finit
|
|
-include ../config.mk
|
|
|
|
TOPDIR ?= $(shell pwd)
|
|
CFLAGS += -fPIC
|
|
LDFLAGS := $(filter-out -rdynamic, $(LDFLAGS))
|
|
LDFLAGS += -shared
|
|
ifneq ($(STATIC), 1)
|
|
PLUGINS ?= initctl.so alsa-utils.so bootmisc.so dbus.so hwclock.so \
|
|
resolvconf.so urandom.so x11-common.so tty.so time.so \
|
|
netlink.so pidfile.so
|
|
DEPS := $(PLUGINS:.so=.d)
|
|
endif
|
|
|
|
include ../common.mk
|
|
|
|
ifneq ($(STATIC), 1)
|
|
all: $(PLUGINS)
|
|
else
|
|
all:
|
|
@true
|
|
endif
|
|
|
|
clean:
|
|
-@$(RM) $(PLUGINS)
|
|
|
|
distclean:
|
|
-@$(RM) *.o *.so $(JUNK) $(DEPS)
|
|
|
|
ifneq ($(STATIC), 1)
|
|
install: all
|
|
@install -d $(DESTDIR)$(plugindir)
|
|
@for plugin in $(PLUGINS); do \
|
|
echo " INSTALL $(DESTDIR)$(plugindir)/$$plugin"; \
|
|
$(STRIPINST) $$plugin $(DESTDIR)$(plugindir)/$$plugin; \
|
|
done
|
|
|
|
uninstall:
|
|
-@for plugin in $(PLUGINS); do \
|
|
echo " RM $(DESTDIR)$(plugindir)/$$plugin"; \
|
|
rm $(DESTDIR)$(plugindir)/$$plugin 2>/dev/null; \
|
|
done
|
|
-@rmdir $(DESTDIR)$(plugindir) 2>/dev/null
|
|
else
|
|
install:
|
|
@true
|
|
uninstall:
|
|
@true
|
|
endif
|
|
|
|
ifneq ($(MAKECMDGOALS),distclean)
|
|
-include $(DEPS)
|
|
endif
|