--- mcore-src/trunk/mcore-tools/Makefile 2014/01/09 15:02:12 2123 +++ mcore-src/trunk/mcore-tools/Makefile 2014/01/10 23:39:41 2223 @@ -1,116 +1,30 @@ # $Id$ -DESTDIR = -PREFIX = /usr -ETCDIR = /etc -BINDIR = $(PREFIX)/bin -SBINDIR = $(PREFIX)/sbin -LIBDIR = $(PREFIX)/lib -DATADIR = $(PREFIX)/share -RUNDIR = /var/lib/mcored -MCLIBDIR = $(LIBDIR)/mcored -RCINITDIR = $(ETCDIR)/rc.d/init.d -CERTDIR = ${ETCDIR}/ssl -PIXMAPSDIR = $(DATADIR)/pixmaps -DRACUTCONFDIR = ${ETCDIR}/dracut.conf.d -DRACUTMODULESDIR = ${LIBDIR}/dracut/modules.d -SYSTEMINIT = systemd -SPLASH = plymouth - -CC = gcc -CHMOD = chmod -INSTALL = install -LN = ln -snf -SED = sed -PKGCONFIG = pkg-config - -GLOBAL_CLASSES = daemon hwdetection sessionauth -CLIENT_CLASSES = boot citrix fluxbox graphic hardware input mage network printing system vnc -ifeq ($(SPLASH),plymouth) - CLIENT_SPLASH_CLASSES = plymouth -else - CLIENT_SPLASH_CLASSES = fbsplash -endif -ifeq ($(SYSTEMINIT),systemd) - CLIENT_SYSTEM_CLASSES = systemd - SYSTEMDUNITDIR = $(shell pkg-config --variable=systemdsystemunitdir systemd) -else - CLIENT_SYSTEM_CLASSES = sysvinit -endif - -all: src/xinfo src/idesk-sysinfo - -src/idesk-sysinfo: src/idesk-sysinfo.in - $(SED) "s:@@PIXMAPSDIR@@:$(PIXMAPSDIR):g" $< >$@ - $(CHMOD) +x $@ - -src/xinfo: src/xinfo.o - $(CC) -o $@ $< -lX11 - -install: install-client-daemon install-client-services-$(SYSTEMINIT) install-dracut-module - -install-client-daemon: - $(INSTALL) -d $(DESTDIR)/$(ETCDIR)/mcore - $(INSTALL) -d $(DESTDIR)/$(MCLIBDIR)/include - $(INSTALL) -d $(DESTDIR)/$(BINDIR) - $(INSTALL) -d $(DESTDIR)/$(SBINDIR) - $(INSTALL) -d $(DESTDIR)/$(RUNDIR) - $(INSTALL) -d $(DESTDIR)/$(CERTDIR)/certs - $(INSTALL) -m0700 -d $(DESTDIR)/$(CERTDIR)/private - - $(INSTALL) -m0644 conf/config.rc $(DESTDIR)/$(ETCDIR)/mcore/ - $(INSTALL) -m0644 daemon/certs/mcored.pem $(DESTDIR)/$(CERTDIR)/certs - $(INSTALL) -m0400 daemon/certs/mcored.key $(DESTDIR)/$(CERTDIR)/private - - $(INSTALL) -m0755 daemon/mcorepasswd.sh $(DESTDIR)/${MCLIBDIR}/mcorepasswd - $(INSTALL) -m0755 daemon/generate-certificate.sh $(DESTDIR)/${MCLIBDIR}/mcore-generate-certificate - $(INSTALL) -m0755 daemon/client/mcored.sh $(DESTDIR)/$(MCLIBDIR)/mcored - $(INSTALL) -m0755 bin/idesk-sysinfo.sh $(DESTDIR)/$(MCLIBDIR)/idesk-sysinfo - $(INSTALL) -m0755 src/xinfo $(DESTDIR)/$(BINDIR)/xinfo - $(INSTALL) -m0755 src/idesk-sysinfo $(DESTDIR)/$(BINDIR)/idesk-sysinfo - - $(SED) "s:^\(MCLIBDIR=\).*:\1\"$(MCLIBDIR)\":" \ - $(DESTDIR)/${MCLIBDIR}/mcorepasswd \ - $(DESTDIR)/$(MCLIBDIR)/mcored - $(LN) $(MCLIBDIR)/mcorepasswd $(DESTDIR)/$(BINDIR)/mcorepasswd - $(LN) $(MCLIBDIR)/mcore-generate-certificate $(DESTDIR)/$(BINDIR)/mcore-generate-certificate - $(LN) $(MCLIBDIR)/mcored $(DESTDIR)/$(SBINDIR)/mcored - $(LN) $(MCLIBDIR)/idesk-sysinfo $(DESTDIR)/$(BINDIR)/idesk-sysinfo - - for class in $(GLOBAL_CLASSES); \ - do \ - $(INSTALL) -m0644 \ - daemon/include/$${class}.global.class \ - $(DESTDIR)/$(MCLIBDIR)/include/; \ - done - for class in $(CLIENT_CLASSES) $(CLIENT_SPLASH_CLASSES) $(CLIENT_SYSTEM_CLASSES); \ - do \ - $(INSTALL) -m0644 \ - daemon/client/include/$${class}.client.class \ - $(DESTDIR)/$(MCLIBDIR)/include/; \ - done - $(INSTALL) -m0644 VERSION $(DESTDIR)/${MCLIBDIR}/VERSION - -install-client-services-sysvinit: - $(INSTALL) -d $(DESTDIR)/$(ETCDIR)/conf.d - $(INSTALL) -d $(DESTDIR)/$(RCINITDIR) - $(INSTALL) -m0644 daemon/client/mcored.confd $(DESTDIR)/$(ETCDIR)/conf.d/mcored - $(INSTALL) -m0755 daemon/client/mcored.rc $(DESTDIR)/$(RCINITDIR)/mcored - -install-client-services-systemd: - $(INSTALL) -d $(DESTDIR)/$(ETCDIR)/conf.d - $(INSTALL) -d $(DESTDIR)/$(SYSTEMDUNITDIR) - $(INSTALL) -m0644 daemon/client/mcored.confd $(DESTDIR)/$(ETCDIR)/conf.d/mcored - $(INSTALL) -m0644 daemon/client/mcored.service $(DESTDIR)/$(SYSTEMDUNITDIR) - -install-dracut-module: - $(INSTALL) -d $(DESTDIR)/$(DRACUTCONFDIR) - $(INSTALL) -d $(DESTDIR)/$(DRACUTMODULESDIR)/40mcored - $(INSTALL) -m0755 dracut/mcored.conf $(DESTDIR)/$(DRACUTCONFDIR)/10-mcored.conf - $(INSTALL) -m0755 dracut/module-setup.sh $(DESTDIR)/$(DRACUTMODULESDIR)/40mcored - $(INSTALL) -m0755 dracut/net-lib.sh $(DESTDIR)/$(DRACUTMODULESDIR)/40mcored - $(INSTALL) -m0755 dracut/run-mcored.sh $(DESTDIR)/$(DRACUTMODULESDIR)/40mcored - -clean: - rm -f src/xinfo.o src/xinfo - rm -f src/idesk-sysinfo +include Makefile.inc + +SUBDIRS = src conf + +INSTALLDIRS = $(SUBDIRS:%=install-%) +CLEANDIRS = $(SUBDIRS:%=clean-%) + +all: $(SUBDIRS) + +install: $(INSTALLDIRS) + $(INSTALL) -d $(DESTDIR)/$(MCORE_LIBDIR) + $(INSTALL) -m0644 VERSION $(DESTDIR)/${MCORE_LIBDIR}/VERSION + +clean: $(CLEANDIRS) + +$(SUBDIRS): + $(MAKE) -C $@ + +$(INSTALLDIRS): + $(MAKE) -C $(@:install-%=%) install + +$(CLEANDIRS): + $(MAKE) -C $(@:clean-%=%) clean + +.PHONY: $(SUBDIRS) +.PHONY: $(INSTALLDIRS) +.PHONY: $(CLEANDIRS) +.PHONY: all install clean