CC=gcc SDIR=src CRONDIR=cron INSTALL=/usr/bin/install -c MODBUSLOGCFLAGS=-I/usr/include/modbus MODBUSLOGLIBS=-lmodbus -lconfig MODBUSLOGBINDIR=/usr/sbin MODBUSLOGCFGDIR=/etc MODBUSLOGLOGDIR=/var/modbuslog MODBUSLOGCRONDIR=/etc/cron.d FTPUPLOADCFLAGS= FTPUPLOADLIBS=-lconfig FTPUPLOADCFGDIR=/etc FTPUPLOADBINDIR=/usr/bin LIGHTINGCONTROLCFLAGS= LIGHTINGCONTROLLIBS=-lconfig LIGHTINGCONTROLBINDIR=/usr/sbin LIGHTINGCONTROLCFGDIR=/etc LIGHTINGCONTROLLOGDIR= LIGHTINGCONTROLCRONDIR=/etc/cron.d PHIDGETCONTROLCFLAGS= PHIDGETCONTROLLIBS=-lconfig -lphidget21 PHIDGETCONTROLBINDIR=/usr/sbin PHIDGETCONTROLCFGDIR=/etc PHIDGETCONTROLLOGDIR=/var/phidgetcontrol PHIDGETCONTROLCRONDIR=/etc/cron.d PHPSDIR=php WWWDIR=/var/www GITTAGFLAG := -D'VERSION_STRING="$(shell LC_ALL=C git describe --tags)"' MODBUSLOGCFLAGS += $(GITTAGFLAG) FTPUPLOADCFLAGS += $(GITTAGFLAG) LIGHTINGCONTROLCFLAGS += $(GITTAGFLAG) PHIDGETCONTROLCFLAGS += $(GITTAGFLAG) all: modbuslog ftpupload lightingcontrol phidgetcontrol weatherstation_test clean: rm -f $(SDIR)/modbuslog rm -f $(SDIR)/ftphelper rm -f $(SDIR)/lightingcontrol rm -f $(SDIR)/phidgetcontrol rm -f $(SDIR)/weatherstation_test modbuslog: $(SDIR)/modbuslog.c $(CC) -o $(SDIR)/$@ $^ $(MODBUSLOGCFLAGS) $(MODBUSLOGLIBS) ftpupload: $(SDIR)/ftphelper.c $(CC) -o $(SDIR)/ftphelper $^ $(FTPUPLOADCFLAGS) $(FTPUPLOADLIBS) lightingcontrol: $(SDIR)/lightingcontrol.c $(CC) -o $(SDIR)/$@ $^ $(LIGHTINGCONTROLCFLAGS) $(LIGHTINGCONTROLLIBS) phidgetcontrol: $(SDIR)/phidgetcontrol.c $(CC) -o $(SDIR)/$@ $^ $(PHIDGETCONTROLCFLAGS) $(PHIDGETCONTROLLIBS) weatherstation_test: $(SDIR)/weatherstation_test.c $(CC) -o $(SDIR)/$@ $^ $(MODBUSLOGCFLAGS) $(MODBUSLOGLIBS) install_modbuslog: $(INSTALL) $(SDIR)/modbuslog $(MODBUSLOGBINDIR)/modbuslog test -f $(MODBUSLOGCFGDIR)/modbuslog.cfg || $(INSTALL) -m 644 $(SDIR)/modbuslog.cfg $(MODBUSLOGCFGDIR)/modbuslog.cfg @if [ ! -d $(MODBUSLOGLOGDIR) ]; \ then \ mkdir $(MODBUSLOGLOGDIR); \ mkdir $(MODBUSLOGLOGDIR)/interval; \ mkdir $(MODBUSLOGLOGDIR)/archive; \ fi test -f $(MODBUSLOGLOGDIR)/interval/interval.txt || $(INSTALL) -m 644 $(SDIR)/interval.txt $(MODBUSLOGLOGDIR)/interval/interval.txt test -f $(MODBUSLOGCRONDIR)/modbuslog || $(INSTALL) -m 644 $(CRONDIR)/modbuslog $(MODBUSLOGCRONDIR)/modbuslog $(INSTALL) $(PHPSDIR)/readfile.php $(WWWDIR)/readfile.php install_ftpupload: test -f $(CFGDIR)/ftpupload.cfg || $(INSTALL) -m 644 $(SDIR)/ftpupload.cfg $(FTPUPLOADCFGDIR)/ftpupload.cfg $(INSTALL) $(SDIR)/ftpupload $(FTPUPLOADBINDIR)/ftpupload $(INSTALL) $(SDIR)/ftphelper $(FTPUPLOADBINDIR)/ftphelper install_lightingcontrol: $(INSTALL) $(SDIR)/lightingcontrol $(LIGHTINGCONTROLDIR)/lightingcontrol test -f $(LIGHTINGCONTROLCFGDIR)/lightingcontrol.cfg || $(INSTALL) -m 644 $(SDIR)/lightingcontrol.cfg $(LIGHTINGCONTROLCFGDIR)/lightingcontrol.cfg test -f $(LIGHTINGCONTROLCRONDIR)/lightingcontrol || $(INSTALL) -m 644 $(CRONDIR)/lightingcontrol $(LIGHTINGCONTROLCRONDIR)/lightingcontrol install_phidgetcontrol: $(INSTALL) $(SDIR)/phidgetcontrol $(PHIDGETCONTROLBINDIR)/phidgetcontrol test -f $(PHIDGETCONTROLCFGDIR)/phidgetcontrol.cfg || $(INSTALL) -m 644 $(SDIR)/phidgetcontrol.cfg $(PHIDGETCONTROLCFGDIR)/phidgetcontrol.cfg @if [ ! -d $(PHIDGETCONTROLLOGDIR) ]; \ then \ mkdir $(PHIDGETCONTROLLOGDIR); \ mkdir $(PHIDGETCONTROLLOGDIR)/interval; \ mkdir $(PHIDGETCONTROLLOGDIR)/archive; \ fi test -f $(PHIDGETCONTROLCRONDIR)/phidgetcontrol || $(INSTALL) -m 644 $(CRONDIR)/phidgetcontrol $(PHIDGETCONTROLCRONDIR)/phidgetcontrol installall: install_modbuslog install_ftpupload install_lightingcontrol install_phidgetcontrol install: all installall