AboutSummaryRefsLogTreeCommitDiffStats
## Makefile for the toplevel directory of mcron.
## Copyright (C) 2003 Dale Mellor
##
## This program is free software; you can redistribute it and/or modify
## it under the terms of the GNU General Public License as published by
## the Free Software Foundation; either version 2, or (at your option)
## any later version.
##
## This program is distributed in the hope that it will be useful,
## but WITHOUT ANY WARRANTY; without even the implied warranty of
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
## GNU General Public License for more details.
##
## You should have received a copy of the GNU General Public License
## along with this program; if not, write to the Free Software
## Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.

## Process this file with automake to produce Makefile.in

ED = @ED@   # !!!! Are these needed?
CP = @CP@

MAINTAINERCLEANFILES = configure makefile makefile.in \
                       install-sh missing mkinstalldirs texinfo.tex INSTALL \
                       aclocal.m4 compile depcomp COPYING

CLEANFILES = mcron.c core.scm

EXTRA_DIST = makefile.ed main.scm mcron-core.scm vixie-specification.scm \
             crontab.scm environment.scm job-specifier.scm redirect.scm \
             vixie-time.scm mcron.c.template BUGS

info_TEXINFOS = mcron.texinfo
bin_PROGRAMS = mcron
mcron_SOURCES = mcron.c
mcron_LDFLAGS = @GUILE_LDFLAGS@
mcron_CFLAGS = @GUILE_CFLAGS@ -DGUILE_LOAD_PATH=\"$(datadir)\"

pkgdata_DATA = core.scm environment.scm job-specifier.scm redirect.scm \
               vixie-time.scm vixie-specification.scm config.scm


# If you're wondering, the configure script keeps deleting all files with a name
# like core.*, so we have to keep re-making it (I lost a good day's work because
# of this).

core.scm : mcron-core.scm
	$(CP) mcron-core.scm core.scm

mcron.c : main.scm crontab.scm makefile.ed mcron.c.template
	@echo 'Building mcron.c...'
	@$(ED) < makefile.ed > /dev/null 2>&1
	@rm -f mcron.escaped.scm > /dev/null 2>&1


# !!!! Want to be able to install as non-root.

# install-exec-local:
# 	@if [ `id -u` -ne 0 ]; then \
# 	    echo "*** MUST BE ROOT TO INSTALL MCRON ***"; \
# 	    exit 1; \
# 	fi

#full program prefix
fpp = $(DESTDIR)$(bindir)/@real_program_prefix@

install-exec-hook:
	@if [ "`id -u`" -eq "0" ]; then \
	   rm -f $(fpp)cron$(EXEEXT) > /dev/null 2>&1; \
	   $(INSTALL) --mode='u=rwx' mcron$(EXEEXT) $(fpp)cron$(EXEEXT); \
	   rm -f $(fpp)crontab$(EXEEXT) > /dev/null 2>&1; \
	   $(INSTALL) --mode='u=rwxs,og=rx' mcron$(EXEEXT) $(fpp)crontab$(EXEEXT); \
	   ./mkinstalldirs -m 'u=rwx' /var/cron; \
	   ./mkinstalldirs -m 'u=rwx,og=rx' /var/run; \
	   ./mkinstalldirs -m 'u=rwx,og=rx' @GUILE_SITE@; \
	   ./mkinstalldirs -m 'u=rwx,og=rx' @GUILE_SITE@/mcron; \
    else \
       echo "+++ WARNING: NON-ROOT INSTALL: ONLY mcron WILL BE INSTALLED, NOT ANY OF THE VIXIE REPLACEMENT PROGRAMS"; \
	fi


uninstall-hook:
	if [ "`id -u`" -eq "0" ]; then \
	    rm -f $(fpp){cron,crontab}$(EXEEXT); \
	fi