--include ../mconfig
+include ../mconfig
-objects = dinit.o load_service.o service.o control.o dinit-log.o dinitctl.o shutdown.o dinit-reboot.o
+ifeq ($(BUILD_SHUTDOWN),yes)
+ SHUTDOWN=shutdown
+endif
-dinit_objects = dinit.o load_service.o service.o control.o dinit-log.o
+objects = dinit.o load_service.o service.o control.o dinit-log.o dinit-main.o dinitctl.o shutdown.o
-all: dinit dinitctl
+dinit_objects = dinit.o load_service.o service.o control.o dinit-log.o dinit-main.o
-shutdown-utils: shutdown
+all: dinit dinitctl $(SHUTDOWN)
dinit: $(dinit_objects)
$(CXX) -o dinit $(dinit_objects) $(EXTRA_LIBS)
shutdown: shutdown.o
$(CXX) -o shutdown shutdown.o
-dinit-reboot: dinit-reboot.o
- $(CXX) -o dinit-reboot dinit-reboot.o
-
-$(objects): %.o: %.cc service.h dinit-log.h control.h control-cmds.h cpbuffer.h
+$(objects): %.o: %.cc
$(CXX) $(CXXOPTS) -Idasynq -c $< -o $@
-#install: all
+check: $(dinit_objects)
+ $(MAKE) -C tests check
-#install.man:
+install: all
+ install -d $(DESTDIR)/sbin
+ install -s dinit dinitctl $(SHUTDOWN) $(DESTDIR)/sbin
+ifeq ($(BUILD_SHUTDOWN),yes)
+ install halt reboot $(DESTDIR)/sbin
+endif
clean:
- rm -f *.o
+ rm -f *.o *.d
rm -f dinit dinitctl shutdown
+ $(MAKE) -C tests clean
+
+$(objects:.o=.d): %.d: %.cc
+ $(CXX) $(CXXOPTS) -Idasynq -MM -MG -MF $@ $<
+
+-include $(objects:.o=.d)