1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- include ../mconfig
- HOSTCXX ?= $(CXX)
- HOSTCXXFLAGS ?= $(CXXFLAGS)
- HOSTLDFLAGS ?= $(LDFLAGS)
- STRIPOPTS ?= -s
- ifeq ($(BUILD_SHUTDOWN),yes)
- SHUTDOWN=$(SHUTDOWN_PREFIX)shutdown
- endif
- dinit_objects = dinit.o load-service.o service.o proc-service.o baseproc-service.o control.o dinit-log.o \
- dinit-main.o run-child-proc.o options-processing.o
- objects = $(dinit_objects) dinitctl.o dinitcheck.o shutdown.o
- all: dinit dinitctl dinitcheck $(SHUTDOWN)
- # Look for a suitable build config file and use it.
- ../mconfig:
- @UNAME=`uname`;\
- if [ -f "../configs/mconfig.$$UNAME" ]; then \
- echo "Found configuration for OS: $$UNAME"; \
- ln -sf "configs/mconfig.$$UNAME" ../mconfig; \
- else \
- echo "No config available. Please create suitable mconfig file."; \
- fi
- includes/mconfig.h: mconfig-gen
- ./mconfig-gen SBINDIR=$(SBINDIR) SYSCONTROLSOCKET=$(SYSCONTROLSOCKET) SHUTDOWN_PREFIX=$(SHUTDOWN_PREFIX) \
- $(if $(USE_UTMPX),USE_UTMPX=$(USE_UTMPX),) > includes/mconfig.h
- mconfig-gen: mconfig-gen.cc ../mconfig
- $(HOSTCXX) $(HOSTCXXOPTS) -o mconfig-gen mconfig-gen.cc $(HOSTLDFLAGS)
- $(objects): includes/mconfig.h
- dinit: $(dinit_objects)
- $(CXX) -o dinit $(dinit_objects) $(LDFLAGS)
- dinitctl: dinitctl.o
- $(CXX) -o dinitctl dinitctl.o $(LDFLAGS)
- dinitcheck: dinitcheck.o options-processing.o
- $(CXX) -o dinitcheck dinitcheck.o options-processing.o $(LDFLAGS)
- $(SHUTDOWNPREFIX)shutdown: shutdown.o
- $(CXX) -o $(SHUTDOWNPREFIX)shutdown shutdown.o $(LDFLAGS)
- $(objects): %.o: %.cc
- $(CXX) $(CXXOPTS) -MMD -MP -Iincludes -Idasynq -c $< -o $@
- check:
- $(MAKE) -C tests check
- check-igr: dinit dinitctl dinitcheck
- $(MAKE) -C igr-tests check-igr
- run-cppcheck:
- cppcheck --std=c++11 -Iincludes -Idasynq --force --enable=all *.cc 2>../cppcheck-report.txt
- install: all
- install -d $(DESTDIR)$(SBINDIR)
- install $(STRIPOPTS) dinit dinitctl dinitcheck $(SHUTDOWN) $(DESTDIR)$(SBINDIR)
- ifeq ($(BUILD_SHUTDOWN),yes)
- ln -f $(DESTDIR)$(SBINDIR)/$(SHUTDOWN) $(DESTDIR)$(SBINDIR)/$(SHUTDOWNPREFIX)halt
- ln -f $(DESTDIR)$(SBINDIR)/$(SHUTDOWN) $(DESTDIR)$(SBINDIR)/$(SHUTDOWNPREFIX)reboot
- endif
- clean:
- rm -f *.o *.d
- rm -f dinit dinitctl dinitcheck shutdown mconfig-gen
- rm -f includes/mconfig.h
- $(MAKE) -C tests clean
- $(MAKE) -C igr-tests clean
- -include $(objects:.o=.d)
|