Juggled build infrastructure to make mcron.1 man page properly.

This commit is contained in:
Dale Mellor 2014-05-25 14:57:37 +01:00
commit c0ba5c6036
14 changed files with 30 additions and 29 deletions

View file

@ -1,7 +1,17 @@
2014-05-25 Dale Mellor <dale_mellor@users.sourceforge.net>
* Juggled build infrastructure so that we can make the minimal man
page in the proper autotools way.
* configure.ac: version to 1.0.8.
2014-04-28 Dale Mellor <dale_mellor@users.sourceforge.net> 2014-04-28 Dale Mellor <dale_mellor@users.sourceforge.net>
* We now run against, and require, guile-2.0. * We now run against, and require, guile-2.0.
* configure.ac: version to 1.0.7.
2012-02-04 Dale Mellor <dale_mellor@users.sourceforge.net> 2012-02-04 Dale Mellor <dale_mellor@users.sourceforge.net>
@ -148,7 +158,7 @@
________________________________________________________________________________ ________________________________________________________________________________
Copyright (C) 2003, 2005, 2006 Dale Mellor Copyright (C) 2003, 2005, 2006, 2014 Dale Mellor
Copying and distribution of this file, with or without modification, Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright are permitted in any medium without royalty provided the copyright

View file

@ -21,7 +21,7 @@
AC_PREREQ(2.61) AC_PREREQ(2.61)
AC_INIT([mcron], [1.0.7], [dale_mellor@users.sourceforge.net]) AC_INIT([mcron], [1.0.8], [dale_mellor@users.sourceforge.net])
AM_INIT_AUTOMAKE AM_INIT_AUTOMAKE
@ -44,10 +44,12 @@ AC_PROG_AWK
AC_PROG_EGREP AC_PROG_EGREP
AM_PROG_CC_C_O AM_PROG_CC_C_O
PKG_CHECK_MODULES(GUILE, guile-2.0 >= 2.0.7) PKG_CHECK_MODULES(GUILE, guile-2.0)
# Checks for programs. # Checks for programs.
AM_MISSING_PROG(HELP2MAN, help2man, $missing_dir)
AC_CHECK_PROGS(SED, sed) AC_CHECK_PROGS(SED, sed)
if test "x$ac_cv_prog_SED" = "x"; then if test "x$ac_cv_prog_SED" = "x"; then
AC_MSG_ERROR(sed not found) AC_MSG_ERROR(sed not found)
@ -169,5 +171,5 @@ real_program_prefix=`echo $program_prefix | sed s/NONE//`
AC_SUBST(real_program_prefix) AC_SUBST(real_program_prefix)
AC_CONFIG_FILES(mcron.texinfo makefile config.scm) AC_CONFIG_FILES(mcron.texinfo makefile scm/mcron/makefile scm/mcron/config.scm)
AC_OUTPUT AC_OUTPUT

View file

@ -18,40 +18,33 @@
## Process this file with automake to produce Makefile.in ## Process this file with automake to produce Makefile.in
SUBDIRS = scm/mcron .
ED = @ED@ # !!!! Are these needed? ED = @ED@ # !!!! Are these needed?
CP = @CP@ CP = @CP@
MAINTAINERCLEANFILES = configure makefile makefile.in config.guess config.sub \ MAINTAINERCLEANFILES = configure makefile makefile.in config.guess config.sub \
install-sh missing texinfo.tex INSTALL \ install-sh missing texinfo.tex INSTALL \
aclocal.m4 compile depcomp aclocal.m4 compile depcomp mcron.1
CLEANFILES = mcron.c core.scm CLEANFILES = mcron.c core.scm
EXTRA_DIST = makefile.ed main.scm mcron-core.scm vixie-specification.scm \ EXTRA_DIST = makefile.ed mcron.c.template BUGS
crontab.scm environment.scm job-specifier.scm redirect.scm \
vixie-time.scm mcron.c.template BUGS
info_TEXINFOS = mcron.texinfo info_TEXINFOS = mcron.texinfo
dist_man1_MANS = mcron.1 man_MANS = mcron.1
bin_PROGRAMS = mcron bin_PROGRAMS = mcron
mcron_SOURCES = mcron.c mcron_SOURCES = mcron.c
mcron_LDADD = @GUILE_LIBS@ mcron_LDADD = @GUILE_LIBS@
mcron_CFLAGS = @GUILE_CFLAGS@ -DGUILE_LOAD_PATH=\"$(datadir)\"
pkgdata_DATA = core.scm environment.scm job-specifier.scm redirect.scm \ # The second option is so that we can execute the binary in the local directory,
vixie-time.scm vixie-specification.scm config.scm # in turn so that we can do mcron --help during the build process.
mcron_CFLAGS = @GUILE_CFLAGS@ -DGUILE_LOAD_PATH=\"$(datadir):./scm:...\"
# If you're wondering, the configure script keeps deleting all files with a name mcron.c : scm/mcron/main.scm scm/mcron/crontab.scm makefile.ed mcron.c.template
# 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...' @echo 'Building mcron.c...'
@$(ED) < makefile.ed > /dev/null 2>&1 @$(ED) < makefile.ed > /dev/null 2>&1
@rm -f mcron.escaped.scm > /dev/null 2>&1 @rm -f mcron.escaped.scm > /dev/null 2>&1
@ -76,9 +69,6 @@ install-exec-hook:
else \ else \
echo "+++ WARNING: NON-ROOT INSTALL: ONLY mcron WILL BE INSTALLED, NOT ANY OF THE VIXIE REPLACEMENT PROGRAMS"; \ echo "+++ WARNING: NON-ROOT INSTALL: ONLY mcron WILL BE INSTALLED, NOT ANY OF THE VIXIE REPLACEMENT PROGRAMS"; \
fi fi
@echo
@echo " AFTER INSTALLATION, CONSIDER RUNNING make cook-up-man"
@echo
uninstall-hook: uninstall-hook:
@ -89,7 +79,6 @@ uninstall-hook:
# Not part of formal package building, but a rule for manual use to get the # Not part of formal package building, but a rule for manual use to get the
# elemental man page. Will only work once the mcron program is installed. # elemental man page. Will only work once the mcron program is installed.
cook-up-man: mcron.1 : mcron.c
help2man -n 'a program to run tasks at regular (or not) intervals' \ $(HELP2MAN) -n 'a program to run tasks at regular (or not) intervals' \
$(fpp)mcron > mcron.1 ./mcron > mcron.1
$(MAKE) install

View file

@ -17,9 +17,9 @@
# #
# #
# #
e main.scm e scm/mcron/main.scm
/\(load "crontab.scm"\)/d /\(load "crontab.scm"\)/d
-1r crontab.scm -1r scm/mcron/crontab.scm
%s/\\/\\\\/g %s/\\/\\\\/g
%s/"/\\"/g %s/"/\\"/g
%s/ *;;.*$/ /g %s/ *;;.*$/ /g

View file