AboutSummaryRefsLogTreeCommitDiffStats
## Makefile for the toplevel directory of mcron.
## Copyright (C) 2003 Dale Mellor
##
#    This file is part of GNU mcron.
# 
#    GNU mcron 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 3 of the License, or (at your option)
#    any later version.
# 
#    GNU mcron 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 GNU mcron.  If not, see <http://www.gnu.org/licenses/>.

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

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

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

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

AM_LDFLAGS = @GUILE_LDFLAGS@
AM_CFLAGS  = @GUILE_CFLAGS@ -DGUILE_LOAD_PATH=\"$(datadir)\"

info_TEXINFOS = mcron.texinfo

bin_PROGRAMS = mcron
mcron_SOURCES = mcron.c

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