caspar-20170830/ 0000755 0001751 0001751 00000000000 13151515336 010237 5 0000000 0000000 caspar-20170830/INSTALL 0000644 0001751 0001751 00000036610 12753041535 011220 0000000 0000000 Installation Instructions
*************************
Copyright (C) 1994-1996, 1999-2002, 2004-2013 Free Software Foundation,
Inc.
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
notice and this notice are preserved. This file is offered as-is,
without warranty of any kind.
Basic Installation
==================
Briefly, the shell command `./configure && make && make install'
should configure, build, and install this package. The following
more-detailed instructions are generic; see the `README' file for
instructions specific to this package. Some packages provide this
`INSTALL' file but do not implement all of the features documented
below. The lack of an optional feature in a given package is not
necessarily a bug. More recommendations for GNU packages can be found
in *note Makefile Conventions: (standards)Makefile Conventions.
The `configure' shell script attempts to guess correct values for
various system-dependent variables used during compilation. It uses
those values to create a `Makefile' in each directory of the package.
It may also create one or more `.h' files containing system-dependent
definitions. Finally, it creates a shell script `config.status' that
you can run in the future to recreate the current configuration, and a
file `config.log' containing compiler output (useful mainly for
debugging `configure').
It can also use an optional file (typically called `config.cache'
and enabled with `--cache-file=config.cache' or simply `-C') that saves
the results of its tests to speed up reconfiguring. Caching is
disabled by default to prevent problems with accidental use of stale
cache files.
If you need to do unusual things to compile the package, please try
to figure out how `configure' could check whether to do them, and mail
diffs or instructions to the address given in the `README' so they can
be considered for the next release. If you are using the cache, and at
some point `config.cache' contains results you don't want to keep, you
may remove or edit it.
The file `configure.ac' (or `configure.in') is used to create
`configure' by a program called `autoconf'. You need `configure.ac' if
you want to change it or regenerate `configure' using a newer version
of `autoconf'.
The simplest way to compile this package is:
1. `cd' to the directory containing the package's source code and type
`./configure' to configure the package for your system.
Running `configure' might take a while. While running, it prints
some messages telling which features it is checking for.
2. Type `make' to compile the package.
3. Optionally, type `make check' to run any self-tests that come with
the package, generally using the just-built uninstalled binaries.
4. Type `make install' to install the programs and any data files and
documentation. When installing into a prefix owned by root, it is
recommended that the package be configured and built as a regular
user, and only the `make install' phase executed with root
privileges.
5. Optionally, type `make installcheck' to repeat any self-tests, but
this time using the binaries in their final installed location.
This target does not install anything. Running this target as a
regular user, particularly if the prior `make install' required
root privileges, verifies that the installation completed
correctly.
6. You can remove the program binaries and object files from the
source code directory by typing `make clean'. To also remove the
files that `configure' created (so you can compile the package for
a different kind of computer), type `make distclean'. There is
also a `make maintainer-clean' target, but that is intended mainly
for the package's developers. If you use it, you may have to get
all sorts of other programs in order to regenerate files that came
with the distribution.
7. Often, you can also type `make uninstall' to remove the installed
files again. In practice, not all packages have tested that
uninstallation works correctly, even though it is required by the
GNU Coding Standards.
8. Some packages, particularly those that use Automake, provide `make
distcheck', which can by used by developers to test that all other
targets like `make install' and `make uninstall' work correctly.
This target is generally not run by end users.
Compilers and Options
=====================
Some systems require unusual options for compilation or linking that
the `configure' script does not know about. Run `./configure --help'
for details on some of the pertinent environment variables.
You can give `configure' initial values for configuration parameters
by setting variables in the command line or in the environment. Here
is an example:
./configure CC=c99 CFLAGS=-g LIBS=-lposix
*Note Defining Variables::, for more details.
Compiling For Multiple Architectures
====================================
You can compile the package for more than one kind of computer at the
same time, by placing the object files for each architecture in their
own directory. To do this, you can use GNU `make'. `cd' to the
directory where you want the object files and executables to go and run
the `configure' script. `configure' automatically checks for the
source code in the directory that `configure' is in and in `..'. This
is known as a "VPATH" build.
With a non-GNU `make', it is safer to compile the package for one
architecture at a time in the source code directory. After you have
installed the package for one architecture, use `make distclean' before
reconfiguring for another architecture.
On MacOS X 10.5 and later systems, you can create libraries and
executables that work on multiple system types--known as "fat" or
"universal" binaries--by specifying multiple `-arch' options to the
compiler but only a single `-arch' option to the preprocessor. Like
this:
./configure CC="gcc -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
CXX="g++ -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
CPP="gcc -E" CXXCPP="g++ -E"
This is not guaranteed to produce working output in all cases, you
may have to build one architecture at a time and combine the results
using the `lipo' tool if you have problems.
Installation Names
==================
By default, `make install' installs the package's commands under
`/usr/local/bin', include files under `/usr/local/include', etc. You
can specify an installation prefix other than `/usr/local' by giving
`configure' the option `--prefix=PREFIX', where PREFIX must be an
absolute file name.
You can specify separate installation prefixes for
architecture-specific files and architecture-independent files. If you
pass the option `--exec-prefix=PREFIX' to `configure', the package uses
PREFIX as the prefix for installing programs and libraries.
Documentation and other data files still use the regular prefix.
In addition, if you use an unusual directory layout you can give
options like `--bindir=DIR' to specify different values for particular
kinds of files. Run `configure --help' for a list of the directories
you can set and what kinds of files go in them. In general, the
default for these options is expressed in terms of `${prefix}', so that
specifying just `--prefix' will affect all of the other directory
specifications that were not explicitly provided.
The most portable way to affect installation locations is to pass the
correct locations to `configure'; however, many packages provide one or
both of the following shortcuts of passing variable assignments to the
`make install' command line to change installation locations without
having to reconfigure or recompile.
The first method involves providing an override variable for each
affected directory. For example, `make install
prefix=/alternate/directory' will choose an alternate location for all
directory configuration variables that were expressed in terms of
`${prefix}'. Any directories that were specified during `configure',
but not in terms of `${prefix}', must each be overridden at install
time for the entire installation to be relocated. The approach of
makefile variable overrides for each directory variable is required by
the GNU Coding Standards, and ideally causes no recompilation.
However, some platforms have known limitations with the semantics of
shared libraries that end up requiring recompilation when using this
method, particularly noticeable in packages that use GNU Libtool.
The second method involves providing the `DESTDIR' variable. For
example, `make install DESTDIR=/alternate/directory' will prepend
`/alternate/directory' before all installation names. The approach of
`DESTDIR' overrides is not required by the GNU Coding Standards, and
does not work on platforms that have drive letters. On the other hand,
it does better at avoiding recompilation issues, and works well even
when some directory options were not specified in terms of `${prefix}'
at `configure' time.
Optional Features
=================
If the package supports it, you can cause programs to be installed
with an extra prefix or suffix on their names by giving `configure' the
option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
Some packages pay attention to `--enable-FEATURE' options to
`configure', where FEATURE indicates an optional part of the package.
They may also pay attention to `--with-PACKAGE' options, where PACKAGE
is something like `gnu-as' or `x' (for the X Window System). The
`README' should mention any `--enable-' and `--with-' options that the
package recognizes.
For packages that use the X Window System, `configure' can usually
find the X include and library files automatically, but if it doesn't,
you can use the `configure' options `--x-includes=DIR' and
`--x-libraries=DIR' to specify their locations.
Some packages offer the ability to configure how verbose the
execution of `make' will be. For these packages, running `./configure
--enable-silent-rules' sets the default to minimal output, which can be
overridden with `make V=1'; while running `./configure
--disable-silent-rules' sets the default to verbose, which can be
overridden with `make V=0'.
Particular systems
==================
On HP-UX, the default C compiler is not ANSI C compatible. If GNU
CC is not installed, it is recommended to use the following options in
order to use an ANSI C compiler:
./configure CC="cc -Ae -D_XOPEN_SOURCE=500"
and if that doesn't work, install pre-built binaries of GCC for HP-UX.
HP-UX `make' updates targets which have the same time stamps as
their prerequisites, which makes it generally unusable when shipped
generated files such as `configure' are involved. Use GNU `make'
instead.
On OSF/1 a.k.a. Tru64, some versions of the default C compiler cannot
parse its `' header file. The option `-nodtk' can be used as
a workaround. If GNU CC is not installed, it is therefore recommended
to try
./configure CC="cc"
and if that doesn't work, try
./configure CC="cc -nodtk"
On Solaris, don't put `/usr/ucb' early in your `PATH'. This
directory contains several dysfunctional programs; working variants of
these programs are available in `/usr/bin'. So, if you need `/usr/ucb'
in your `PATH', put it _after_ `/usr/bin'.
On Haiku, software installed for all users goes in `/boot/common',
not `/usr/local'. It is recommended to use the following options:
./configure --prefix=/boot/common
Specifying the System Type
==========================
There may be some features `configure' cannot figure out
automatically, but needs to determine by the type of machine the package
will run on. Usually, assuming the package is built to be run on the
_same_ architectures, `configure' can figure that out, but if it prints
a message saying it cannot guess the machine type, give it the
`--build=TYPE' option. TYPE can either be a short name for the system
type, such as `sun4', or a canonical name which has the form:
CPU-COMPANY-SYSTEM
where SYSTEM can have one of these forms:
OS
KERNEL-OS
See the file `config.sub' for the possible values of each field. If
`config.sub' isn't included in this package, then this package doesn't
need to know the machine type.
If you are _building_ compiler tools for cross-compiling, you should
use the option `--target=TYPE' to select the type of system they will
produce code for.
If you want to _use_ a cross compiler, that generates code for a
platform different from the build platform, you should specify the
"host" platform (i.e., that on which the generated programs will
eventually be run) with `--host=TYPE'.
Sharing Defaults
================
If you want to set default values for `configure' scripts to share,
you can create a site shell script called `config.site' that gives
default values for variables like `CC', `cache_file', and `prefix'.
`configure' looks for `PREFIX/share/config.site' if it exists, then
`PREFIX/etc/config.site' if it exists. Or, you can set the
`CONFIG_SITE' environment variable to the location of the site script.
A warning: not all `configure' scripts look for a site script.
Defining Variables
==================
Variables not defined in a site shell script can be set in the
environment passed to `configure'. However, some packages may run
configure again during the build, and the customized values of these
variables may be lost. In order to avoid this problem, you should set
them in the `configure' command line, using `VAR=value'. For example:
./configure CC=/usr/local2/bin/gcc
causes the specified `gcc' to be used as the C compiler (unless it is
overridden in the site shell script).
Unfortunately, this technique does not work for `CONFIG_SHELL' due to
an Autoconf limitation. Until the limitation is lifted, you can use
this workaround:
CONFIG_SHELL=/bin/bash ./configure CONFIG_SHELL=/bin/bash
`configure' Invocation
======================
`configure' recognizes the following options to control how it
operates.
`--help'
`-h'
Print a summary of all of the options to `configure', and exit.
`--help=short'
`--help=recursive'
Print a summary of the options unique to this package's
`configure', and exit. The `short' variant lists options used
only in the top level, while the `recursive' variant lists options
also present in any nested packages.
`--version'
`-V'
Print the version of Autoconf used to generate the `configure'
script, and exit.
`--cache-file=FILE'
Enable the cache: use and save the results of the tests in FILE,
traditionally `config.cache'. FILE defaults to `/dev/null' to
disable caching.
`--config-cache'
`-C'
Alias for `--cache-file=config.cache'.
`--quiet'
`--silent'
`-q'
Do not print messages saying which checks are being made. To
suppress all normal output, redirect it to `/dev/null' (any error
messages will still be shown).
`--srcdir=DIR'
Look for the package's source code in directory DIR. Usually
`configure' can determine that directory automatically.
`--prefix=DIR'
Use DIR as the installation prefix. *note Installation Names::
for more details, including other options available for fine-tuning
the installation locations.
`--no-create'
`-n'
Run the configure checks, but stop before creating any output
files.
`configure' also accepts some other, not widely useful, options. Run
`configure --help' for more details.
caspar-20170830/NEWS 0000644 0001751 0001751 00000045061 13151515253 010662 0000000 0000000 Refer to ChangeLog for detailed per-file info.
caspar version 20170830 - The Bleukbos Release
- mk/pod.mk: drop ps2pdf, use pod2pdf (as shipped with e.g. Debian 8 "jessie")
for generating PDF from POD.
- mk/caspar.mk: apply patch contributed by Wessel Dankers:
1) Add support for foo-verify make targets. Such make targets will be
executed by caspar and should verify if the file "foo" is correct in terms
of syntax and integrity.
2) Add a csp_CHECK that works identically to csp_LOAD except that no
csp_LOAD actions are attempted unless and until csp_CHECK completes
successfully.
Use this to validate config remotely before loading (and potentially
breaking) your service.
3) Officially deprecate csp_BUILD.
4) Officially deprecate the "for suh in $(csp_UHOSTS) ..." idiom.
Please note that if you have multiple csp_LOAD targets or multiple csp_CHECK
targets, these are NOT necessarily executed in the order you specify them!
The documentation used to (erroneously) suggest that specifying a check
target and a load target in csp_LOAD in the correct order would cause the
check to run before the load. This is not true in general, and specifically
in the case of make -j.
caspar version 20140919 - The Prnjavor Release
- mk/caspar.mk: apply patch contributed by Wessel Dankers, Aug 8 2014:
1) Localize variables:
previously, caspar would use a few generic variable names (such as “FILES”)
and assign values to them, blithely overwriting any variable of the same name
that the user might be using. With this change, all variables internal to
caspar are prefixed using ‘_csp_’.
2) Stop changing input variables:
variables that serve as input to caspar should be read-only as far as caspar
is concerned. Before this change it would change the value of (at least)
csp_UHOSTS, which broke certain advanced usage patterns. With this change,
caspar uses internal variables for computations.
These modifications do not change the caspar interface.
- doc/caspar.azm: updated links for ansible, cfengine and puppet.
- bootstrap: update from automake/aclocal 1.11 to 1.14 (only relevant
for developers building caspar from within a git checkout).
caspar version 20140203 - The Matonge, BXL Release
[ Joost van Baal-Ilić ]
- Makefile.am: explictly set path of setversion: use $(top_srcdir)/setversion.
Specify DISTCLEANFILES. Tweak EXTRADIST. No longer set VERSION.
- configure.ac, setversion: use generic AD1_VERSION, not CASPAR_VERSION
- configure.ac: AC_PREREQ(2.67), reintroduce and update AC_COPYRIGHT, set
AC_REVISION.
- setversion: simplify: rip out support for manually overwriting autogenerated
version.
- bootstrap: downgrade from autotools 1.14 to autotools 1.11, so that building
from git works on current Ubuntu LTS.
- doc/csp_helper.azm: documented csp_mkdircp.
- doc/caspar.azm: started documenting 'make diff'.
caspar version 20140106 - The Bakertand Release
[ Joost van Baal-Ilić ]
- script/csp_sucp: bugfix: feed not just $3, but also any more args
as files to tar. Now passing more than just one file to csp_sucp actually
works.
- bootstrap: update from automake/aclocal 1.11 to 1.14 (only relevant
for developers building caspar from within a git checkout).
- Makefile.am: no longer ship caspar-.tar.bz2, do ship
caspar-.tar.xz.
caspar version 20131119 - The Sint Agatha Release
[ Joost van Baal-Ilić ]
- doc/csp_helper.azm, script/csp_sucp: Fixes in csp_sucp(1):
+ update csp_sucp description: since version 20120514 we use tar, not cat.
document how to use csp_sucp with interactive sudo password prompt.
+ we no longer suffer from password-prompt bug: run sudo non-interactive
(-n) when stdin is filled with tar data ; explicitly get rid of tty when
stdin is filled with tar in order to make sure this data will not get
interpreted as password for sudo; pass -t to ssh, not -T, when refreshing
sudo password, gets rid of error message "sudo: no tty present and no
askpass program specified ".
+ explicitly pass c to tar. (GNU tar) 1.26 needs at least one option.
- mk/caspar.mk: Swap dealing with $(csp_TABOOFILES) and $(csp_BUILD) in
contructing FILES to be install-ed. Now $(csp_TABOOFILES) is subtracted
from $(csp_BUILD) (was: $(csp_BUILD) gets added to result of subtracting
$(csp_TABOOFILES) from list of FILES. So, now "csp_BUILD = check" and
"csp_TABOOFILES_ADD = check" no longer results in caspar trying to install
a file called 'check'.
caspar version 20120530 - The Miekoekse Release
[Wessel Dankers]
- mk/caspar.mk: do not run bulktargets if no files are available
[Joost van Baal-Ilić]
- script/csp_mkdircp: add yet another caspar helper
caspar version 20120514 - The Железничка Release
[Joost van Baal-Ilić]
- caspar/script/csp_sucp: csp_sucp is reimplemented: now with "multisupport"
for "bulktargets", it no longer uses cat, but tar.
- caspar/mk/caspar.mk: csp_SUCP now again supports setting csp_SUCP_USER from
within Makefile: interface restored to the one in caspar <= 20101204.
[Wessel Dankers]
- caspar/mk/caspar.mk: Introduce "bulktargets" in caspar.mk. Running "make" or
"make install" now installs all files in current directory in just one
csp_PUSH call. In case csp_PUSH is set to default "scp", scp is called
just once; this makes caspar much more efficient.
caspar version 20120508 - The Sint Katelijne Release
[Joost van Baal-Ilić]
- caspar/doc/Makefile.am: assume html is in utf8; this fixes a bug
introduced in version 20120420: manpages were empty.
caspar version 20120420 - The Lamprais Release, for Danishka Navin
[Joost van Baal-Ilić]
- caspar/script/csp_sucp: csp_sucp now honors CSP_DEBUG
- caspar/NEWS, caspar/doc/caspar.azm: document new csp_PUSH
interface, support for csp_XARG is dropped
- caspar/mk/caspar.mk: add (undocumented) target "debug". fix bug,
caspar now somewhat usable again.
caspar version 20120417 - The Kokki Release
[Joost van Baal-Ilić]
- We now support installing multiple local files in one scp call.
The destination directory of a push script is now passed as the first
argument. Therefore, one can now implement one's own push mechanism in a
more efficient way. The arguments of a push implementation can get shifted,
one can treat remaining args as "$@".
- User interface for caspar helpers csp_* changed in INCOMPATIBLE way.
- If you've written your own csp_PUSH implementation, update it. arguments
now are <[user@]host> (was:
<[user@]host> [])
+ caspar/script/csp_sucp, caspar/script/csp_scp_keep_mode: swap
arguments: now csp_* <[user@]host> (was:
<[user@]host> [su-user])
+ caspar/script/csp_install: swap arguments: now
csp_install
- csp_DIFFXARG support reimplemented (in a slightly less flexible way)
- caspar/script/csp_sucp: fix bug in $CSP_SUCP_USER processing.
caspar version 20120322 - The Kothu Roti Release
[Joost van Baal-Ilić]
- caspar/mk/caspar.mk: backwards INCOMPATIBLE change: csp_CPDIRS and csp_CPDIR
(and 'localtargets') are no longer honored. If you'd like to use cp(1) to
install to csp_CPDIR, define
csp_UHOST = dummy
csp_PUSH = $(csp_cp_FUNC)
and set csp_DIR accordingly. Support for installing in multiple different
directories using cp(1) is dropped. (Likely it's possible to implement it
via some dirty hack.)
- caspar/doc/caspar.azm, caspar/mk/caspar.mk: implement function
csp_scpmkdir_FUNC (and variable csp_MKDIRP): no longer need to define this
function in Makefile.
- caspar/doc/caspar.azm: document csp_UHOSTS_SKIP.
- caspar/doc/caspar.azm: document more advanced way of using csp_LOAD: refer
to $1 in definition of load target, keep loop over hosts implicit.
- caspar/doc/*.azm, caspar/doc/include*: converting syntax to
aephea >= 10.008-1, zoem >= 11-166-1.
- caspar/doc/caspar.azm, caspar/doc/csp_helper.azm: various improvements
in manpages.
caspar version 20101204
[Wessel Dankers]
- caspar/mk/caspar.mk: add $(csp_UHOSTS_SKIP) feature: exclude hosts
- caspar/mk/caspar.mk: combine file lists less clumsily
caspar version 20100624
- Bugfix release
[Wessel Dankers]
- caspar/mk/caspar.mk: fix load-target-as-a-variable didn't work
because $(call ...) was expanded too early
caspar version 20100223
[Joost van Baal]
- Converted from CVS to git.
+ use git2cl (no longer cvs2cl)
- Add (.so request) manpages for csp_install, csp_scp_keep_mode and csp_sucp.
[Wessel Dankers]
- Fixed "target given more than once in the same rule" errors.
- Caspar now shows each command as it is run, and aborts on errors.
- csp_LOAD values are now defined as variables with $1 being the host
they push to.
caspar version 20091115
- Renamed caspar(1) to casparize(1).
- Some tweaking on manpages.
caspar version 20091114
- Preliminary manpage csp_helper(1) added, documenting helper scripts
csp_install, csp_scp_keep_mode and csp_sucp. (The separate csp_sucp manpage
is gone.)
- Adjusted caspar.mk so that it's actually possible to hook csp_install
and csp_scp_keep_mode into caspar.
caspar version 20090926
- Unstable bleeding edge snapshot release.
- Added (not yet documented) new scripts csp_install and csp_scp_keep_mode,
allowing for more robust installs.
- Add script caspar(1), for generating caspar-style Makefiles, contributed
by Jeroen Hoppenbrouwers.
- setversion: allow for user override of version of caspar release.
- TODO: updated
caspar version 20090406
- BEWARE! Backwards INcompatible change in user interface! mk/caspar.mk does
no longer supply backward compatibility with caspar <= 20060216: Support for
csp_SUH, csp_SUHS, csp_SUHDIRS and csp_SCPDIR is dropped. If you use
old-style Makefiles, you'll have to fix these now:
for csp_SUHS now use csp_UHOSTS
for csp_SUH now use csp_UHOST
for csp_SCPDIR now use csp_DIR
(There is no replacement variable for csp_SUHDIRS; csp_CPDIRS for now is
still supported.) See the 20060216 NEWS item for more details. A crude way
to update your Makefiles would be to run something along the lines of:
% find . -name Makefile -o -name install.mk | while read f; do
sed -i 's/csp_SUHS/csp_UHOSTS/g; s/csp_SUH/csp_UHOST/g;
s/csp_SCPDIR/csp_DIR/g' $f;
done
This kinda worked for me. YMMV. (Please mail the author if you need help
converting your Makefiles and you've explicitly used the variable
csp_SUHDIRS.)
(No other incompatible change will get introduced during the Debian "squeeze"
nor during the "squeeze + 1" release cycle: caspar in squeeze + 1 will be
backwards compatible with this caspar version. History of incompatible
changes and Debian GNU/Linux releases:
Debian release caspar version incompatible?
-------------- -------------- -------------
woody (oldoldoldstable) none -
sarge (oldoldstable) 20050302-1 YES
etch (oldstable) 20060618-1 -
lenny (stable) 20070729-1 -
squeeze (testing) > 20070729-1 YES
[1] caspar version 20040721-1 was the first one uploaded to the Debian
archives.)
- Added preliminary support for "make diff" and "make -diff": this
shows the diff between filename in current directory and filename at remote
location. One can use this to test wether the file on the server is in
sync with (e.g.) a previous SVN version before scp-ing it. This prevents
overwrites of "illegal" (i.e. without having used SVN (but possibly useful))
edits directly on the remote server. New variables introduced:
csp_DIFFXARG (default: -u)
csp_DIFF (default: csp_diff_FUNC; overwrite this if you want to tweak the
way the diff is computed)
as well as csp_SSH, csp_CAT, csp_Diff and csp_diff_FUNC. For now, this
feature works out of the box in case csp_PUSH is $(csp_scp_FUNC) (the
default scp-based install mechanism) and in case csp_PUSH is
$(csp_sucp_FUNC). If you use cp(1) to install, and have set csp_PUSH to
$(csp_cp_FUNC), for now do set
csp_DIFF = $(csp_Diff) $(4) $(3)/$(1) $(1)
to get this feature working. Very likely, this will no longer be needed in
the feature: out of the box support for all push mechanisms is planned.
Thanks Fred Vos and Jeroen Hoppenbrouwers for joining the discussion about
this feature.
- Added preliminary support for using rsync(1) as push mechanism. Use it by
setting
csp_PUSH = $(csp_rsync_FUNC)
Use csp_rsyncssh_FUNC instead of csp_rsync_FUNC if you don't want to use
the rsync daemon, but ssh (or rsh). Other new variables introduced:
csp_RSYNC (default: rsync),
csp_RSYNCFLAGS (default: -zPt --chmod=ugo=rwX).
Thanks Ko van der Sloot for suggesting this feature.
- Caspar is now licensed under the GNU GPL version 3 or later (no longer v2 or
later).
- Various improvements in caspar(7) manpage. E.g. example added about
using sudo without ssh.
- Bugfix in sgml/print.dsl as used by docbook.mk. The error
`jade:/usr/share/sgml/caspar/print.dsl:126:24:E: element "SYSTEMITEM"
undefined' will no longer show up.
- Bugfix in caspar.mk: deal sane with files named like
"debian-lenny-install.txt": files which had "-install" in their name
never got installed.
- Now uses automake 1.10 for building (was 1.9).
caspar version 20070729
- Caspar now supports a smart way for temporary overrides of csp_UHOSTS, using
csp_UHOSTS_SUBSET. (Actually, this was implemented in release 20070713).
- Improvements in caspar(7) manpage: documented csp_BUILD, improved csp_LOAD
examples, added example on how to add a "check" target.
caspar version 20070713
- Fix bug in csp_sucp(1) when using fourth argument (e.g. via CSP_XARG).
This bug caused sudo to die with error "sudo: the `-u' and '-v' options may
not be used together".
- Minor improvements in caspar(7) manpage.
- TODO: recorded lots of new ideas for improvements, thanks to caspar user
community at UvT.
caspar version 20060618
- Various improvements in caspar(7) manpage.
caspar version 20060610
- The variables csp_scp_DIR, csp_scp_UHOSTS, csp_scp_UHOST and csp_cp_DIR,
which were introduced in snapshot version 20060216, are no longer supported.
These variable were redundant. (Very likely, you'll need csp_UHOST[S],
csp_DIR, and maybe csp_PUSH and csp_LOAD only.)
caspar version 20060608
- Unstable bleeding edge snapshot release.
- Fixed section of csp_sucp(1) manpage.
- Minor bugfixes in caspar.mk.
- Various improvements in caspar(7) manpage.
caspar version 20060531
- Yet another unstable bleeding edge snapshot release.
- Typo in caspar.mk which lead to "invalid syntax in conditional" error is
fixed.
- Added csp_sucp(1) manpage. This script now gets installed.
- Minor improvements on other manpages.
caspar version 20060216
- Beware! This is an unstable bleeding edge snapshot release. Test results
are welcomed.
- caspar.mk now has support for installing files using sudo, wrapped in ssh:
it runs something like
ssh foo@bar "sudo sh -c \"cat - > /duh/blah\"" < blah
. To facilitate this, new variables have been introduced: csp_PUSH (default:
a csp_scp make function), csp_SUCP, csp_UHOST, csp_UHOSTS, csp_DIR, csp_XARG.
A script csp_sucp, dealing with the wrapping, is now shipped; it honors a
CSP_SUCP_USER environment variable.
Lots of variables are now deprecated:
for csp_SUHS now use csp_UHOSTS
for csp_SUH now use csp_UHOST
for csp_SCPDIR now use csp_DIR
The variable csp_CPDIRS will be phased out: no more multiple cp target dirs.
Don't worry yet: we still supply full backwards compatibity.
- mk/caspar.mk: install and load now are .PHONY targets, as they should be.
You'll like this if you have files named "install" or "load". Thanks Guus
Sliepen.
caspar version 20050424
- (This release was shipped with Debian. We'll try to remain compatibility.)
- New variable csp_EXTRAFILES added. This enables one to succesfully run e.g.
make .bashrc-install
. Aren't you all happy now? Thanks Guus Sliepen for the patch.
- In order to have csp_EXTRAFILES behave nice, .%.swp is added to
csp_TABOOFILES_DEFAULT and .svn is added to csp_TABOODIRS_DEFAULT.
caspar version 20050302
- (This release was shipped with Debian. We'll try to remain compatibility.)
- Fixed caspar(7) manpage: the last part was not typesetted. Duh.
caspar version 20050301
- BEWARE! BACKWARDS INCOMPATIBILITY! mk/caspar.mk does no longer supply backward
compatibility with caspar <= 20030825. If you use old-style Makefiles, you'll
have to fix these now. See the 20040531 NEWS item for details.
A crude way to update your Makefiles would be to run something along the lines
of:
% find . -name Makefile | while read f; \
do sed -i 's/SDIR/csp_SCPDIR/g; s/(SUH)/(csp_SUH)/g; \
s/^LOAD /csp_LOAD /; s/(SUHS)/(csp_SUHS)/g; \
s/^SUH /csp_SUH /; s/^SUHS /csp_SUHS /' $f; done
% find . -name install.mk | while read f; \
do sed -i 's/^SRDIRS /csp_SUHDIRS /g' $f; done
This kinda worked for me. YMMV.
- New variables csp_TABOO{DIRS,FILES}_{ADD,SKIP} in caspar.mk. See caspar(7).
caspar version 20040721
- This release is planned to get shipped with Debian: it will be available
from the Debian archive.
- No functional changes, just some minor documentation updates and tweaks of
the build system (interesting only for people building a tarball from CVS).
caspar version 20040531
- The caspar CVS is moved to http://alioth.debian.org/. Thanks to the Alioth
admins!
- Experimental install-recursive target added. If you'd like to play with it,
you won't need to adjust your Makefile's. Just type `make install-recursive'
and decide wether you like this feature.
- BEWARE! Change in user interface! caspar.mk variables have been renamed:
new name old name
======== ========
csp_CP CP
csp_CPFLAGS CPFLAGS
csp_CPDIR CDIR
csp_CPDIRS CPDIRS
csp_LOAD LOAD
csp_SCP SCP
csp_SCPFLAGS SCPFLAGS
csp_SCPDIR SDIR
csp_SUH SUH
csp_SUHS SUHS
csp_SUHDIRS SRDIRS
This is done to make sure no unexpected name clashes occur.
For now, we offer a backward compatibility hack: your old Makefile's will
continue to work. However, you're advised to switch to the new user
interface a.s.a.p.
caspar version 20030825
- CPFLAGS and SCPFLAGS added to caspar.mk. See caspar(7), as well as the
caspar.mk file itself.
caspar version 20030809
- Added manpages caspar(7) and caspar-typesetting(7). Installed in
/usr[/local]/share/doc/caspar too, in various formats.
caspar version 20030803
- See doc/ChangeLog.2002 for news about caspar 20030803 and earlier
# This file is maintained at http://git.mdcc.cx/caspar
caspar-20170830/README 0000644 0001751 0001751 00000007333 13151515253 011043 0000000 0000000 # This file is maintained at http://git.mdcc.cx/caspar
caspar - Makefile snippets for common tasks
See doc/caspar.txt for general information about this package, see INSTALL
for generic installation instructions.
The caspar homepage is at http://mdcc.cx/caspar/ . Feedback (bugs, feature
requests, etc.) can be sent to joostvb *dash* caspar *at* mdcc *dot* cx.
After install, directories /usr/local/share/doc/caspar/,
/usr/local/share/caspar/mk/ /usr/local/include/caspar/mk/
/usr/local/share/sgml/caspar/ are created and populated, and manpages caspar(7)
and caspar-typesetting(7) are installed.
- requirements, packages - - - - - - - - - - - - - - - - - - - - - - - - -
GNU make.
For the typesetting functionality, one needs Jade, LaTeX, W3M, Ghostscript, and
Docbook DSSSL.
Debian and Ubuntu ship a packaged caspar.
If you're interested in a caspar RPM, the spec file on
http://mdcc.cx/pub/caspar/caspar.spec might be helpful.
- gimme some of the stuff you've been smoking! - - - - - - - - - - - - - - - -
"What've you been smoking!? A completely fullblown autoconfiscated tarball for
just a eeny weeny Makefile snippet, to be able to install my hosts
configuration files from CVS!? I'm not gonna install that! No way!"
Well, there's no accounting for taste... If I use the same files on many
hosts, I prefer to install them from a tarball. If you were asked to work with
a caspar-ized CVS tree, you can work around installing the tarball by doing
something like this:
cd ~/cvs/kingkong/include
kingkong is a CVS module, holding files which should get installed on host
kingkong.
Create a file install.mk there, which looks like
csp_UHOST = admin@kingkong.example.org
include caspar/mk/caspar.mk
Now, do
echo caspar >> .cvsignore
mkdir -p caspar/mk
and copy caspar.mk to the just created directory caspar/mk/ .
- hacking on caspar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Since 2009-12, the caspar code is maintained using git on
http://git.mdcc.cx/caspar; start using it by running
git clone http://git.mdcc.cx/caspar.git
.
Contact the author if you'd like to get commit messages in your mailbox. I
might get to setting up a mailinglist for that.
(The page at http://alioth.debian.org/projects/caspar/ is no longer very
useful.)
- some thoughts on include path - - - - - - - - - - - - - - - - - - - - - - - -
The default GNU make include path is .:PREFIX/include:/usr/gnu/include:
/usr/local/include:/usr/include . See make.info, node `Include'. FHS however
says: '/usr/include [...] is where all of the system's general-use include
files for the C and C++ programming languages should be placed.' This makes
GNU make somewhat incompatible with the FHS :( . GNU make could better use
something like '/usr/share/mk' in its default include path.
We work around this by creating the following symlink when being 'make
install'-ed:
/usr/local/include/caspar/mk/caspar.mk ->
/usr/local/share/caspar/mk/caspar.mk
.
This enables us to be able to call
include caspar/mk/caspar.mk
from a Makefile.
- some thoughts on implicit rules - - - - - - - - - - - - - - - - - - - - - - -
Add our implicit pattern rules to Make built-in implicit rules?
When no ./Makefile exists, but ./foo.c does, make knows what to do when asked
to ``make foo''. Furthermore, in absence of ./Makefile, ``TEX=latex make
blah.dvi'' does something sane with blah.tex.
It'd be cool if we could add to Make's built-in implicit rules, and have our
implicit rules work, even if no Makefile exists in the current directory.
However, I don't think this is possible with current (3.80-6) Make. The
built-in implicit rules are compiled in make binary, so adding the caspar ones
to some magic directory will likely not work.
caspar-20170830/AUTHORS 0000644 0001751 0001751 00000000127 13151515253 011225 0000000 0000000 caspar is written by Joost van Baal-Ilić < joostvb *dash* caspar *at* mdcc *dot* cx >
caspar-20170830/ChangeLog 0000644 0001751 0001751 00000164245 13151515270 011742 0000000 0000000 2017-08-30 Joost van Baal-Ilić
* caspar/NEWS: ship it: version 20170830 - The Bleukbos Release
2017-08-30 Joost van Baal-Ilić
* caspar/NEWS, caspar/doc/caspar.azm, caspar/mk/caspar.mk: apply
patch contibuted Wed, 23 Aug 2017 by Wessel Dankers in Message-Id: :
add check and verify targets and update the docs a little
2017-04-03 Joost van Baal-Ilić
* caspar/mk/pod.mk: its 2017. utf-8 is here
2017-03-27 Joost van Baal-Ilić
* caspar/NEWS, caspar/mk/pod.mk: mk/pod.mk: drop ps2pdf, use pod2pdf
(as shipped with e.g. Debian 8 "jessie") for generating PDF from
POD.
2016-03-04 Joost van Baal-Ilić
* debian/changelog, debian/control: * debian/control: bumped Standards-Version: from 3.9.5 to 3.9.7 (no changes needed: caspar-doc behaves as now specified in policy
12.3). * debian/control: fix Homepage and Vcs-Git fields: work around bug
in my current bozohttpd webserver.
2016-03-04 Joost van Baal-Ilić
* caspar/TODO: zo werkt dat
2016-03-04 Joost van Baal-Ilić
* caspar/TODO: another idea for improvement
2015-07-17 Joost van Baal-Ilić
* caspar/NEWS: start next release
2015-07-17 Joost van Baal-Ilić
* caspar/TODO: some stuff has been done
2014-09-24 Joost van Baal-Ilić
* debian/changelog, debian/control: New upstream release - The
Prnjavor Release * New upstream release - The Prnjavor Release * debian/control: bumped Standards-Version: from 3.9.3 to 3.9.5 (no changes needed).
2014-09-19 Joost van Baal-Ilić
* caspar/NEWS: ship it: version 20140919 - The Prnjavor Release
2014-09-19 Joost van Baal-Ilić
* caspar/NEWS: choosen a name for this release
2014-09-19 Joost van Baal-Ilić
* caspar/NEWS: record missed changes: automaken
2014-09-19 Joost van Baal-Ilić
* caspar/NEWS, caspar/bootstrap: record changes
2014-09-02 Joost van Baal-Ilić
* caspar/NEWS: git demo
2014-08-08 Joost van Baal-Ilić
* caspar/mk/caspar.mk: apply patch contributed by Wessel Dankers in
Message-ID: : commit b0646dd118d0847e5a7b4af03de664cd261cf6e1 Author: Wessel Dankers Date: Fri Aug 8 16:02:27 2014 +0200 Localize variables, stop changing input variables 1) Localize variables: previously, caspar would use a few generic variable names (such as “FILES”) and assign values to them, blithely overwriting any variable of the same name that the
user might be using. With this change, all variables internal to caspar are prefixed using ‘_csp_’. 2) Stop changing input variables: variables that serve as input to caspar should be read-only as far as caspar is concerned.
Before this change it would change the value of (at least)
csp_UHOSTS, which broke certain advanced usage patterns. With this
change, caspar uses internal variables for computations. These modifications do not change the caspar interface.
2014-02-26 Joost van Baal-Ilić
* caspar/doc/caspar.azm: new links
2014-02-07 Joost van Baal-Ilić
* debian/changelog: ship it: caspar_20140203-1_all.deb
2014-02-06 Joost van Baal-Ilić
* debian/changelog: fix spelling error. tnx lintian
2014-02-05 Joost van Baal-Ilić
* caspar/NEWS, debian/changelog: start .deb, start next upstream
release
2014-02-03 Joost van Baal-Ilić
* caspar/Makefile.am: oops: git2cl/ChangeLog
2014-02-03 Joost van Baal-Ilić
* caspar/NEWS, caspar/TODO: ship it: 20140203 - The Matonge, BXL
Release
2014-02-03 Joost van Baal-Ilić
* caspar/Makefile.am, caspar/NEWS, caspar/configure.ac,
caspar/doc/Makefile.am, caspar/setversion: distcheck works now...
2014-02-02 Joost van Baal-Ilić
* caspar/NEWS, caspar/configure.ac: update AC_COPYRIGHT
2014-02-02 Joost van Baal-Ilić
* caspar/TODO: nothing
2014-02-02 Joost van Baal-Ilić
* caspar/NEWS, caspar/TODO, caspar/doc/caspar.azm: started
documenting "make diff"
2014-02-02 Joost van Baal-Ilić
* caspar/NEWS, caspar/TODO, caspar/doc/Makefile.am: do not ignore
errors from tidy
2014-02-02 Joost van Baal-Ilić
* caspar/NEWS, caspar/TODO, caspar/doc/csp_helper.azm: documented
csp_mkdircp
2014-02-02 Joost van Baal-Ilić
* caspar/NEWS: more to do
2014-02-02 Joost van Baal-Ilić
* caspar/Makefile.am, caspar/NEWS, caspar/configure.ac,
caspar/setversion: make distcheck works again, reintroduce
m4_include
2014-02-02 Joost van Baal-Ilić
* caspar/Makefile.am, caspar/NEWS, caspar/configure.ac: Makefile.am:
explictly set path of setversion: use $(top_srcdir)/setversion.
Specify DISTCLEANFILES. Add some workarounds in order to make sure
"make distcheck" completes again.
2014-02-01 Joost van Baal-Ilić
* caspar/Makefile.am, caspar/NEWS: nope, automake-1.11 wont help us
2014-02-01 Joost van Baal-Ilić
* caspar/Makefile.am, caspar/NEWS, caspar/bootstrap: s/1.14/1.11/ :
maybe older autotools works better...
2014-02-01 Joost van Baal-Ilić
* caspar/NEWS: name release, stuff to do
2014-01-06 Joost van Baal-Ilić
* debian/changelog: have uploaded
2014-01-06 Joost van Baal-Ilić
* caspar/NEWS: start next release
2014-01-06 Joost van Baal-Ilić
* caspar/TODO: another autobug found
2014-01-06 Joost van Baal-Ilić
* debian/changelog: (preparing) release 20140106-1
2014-01-06 Joost van Baal-Ilić
* debian/changelog: release names
2014-01-06 Joost van Baal-Ilić
* caspar/NEWS, caspar/TODO: ship it: version 20140106 - The
Bakertand Release
2014-01-06 Joost van Baal-Ilić
* caspar/TODO: autotools investigation
2014-01-06 Joost van Baal-Ilić
* caspar/NEWS, caspar/configure.ac: update upcoming VERSION in NEWS
2013-12-06 Joost van Baal-Ilić
* : commit d0f10b2954b794c689cee50e3789f44381cd68c7 Author: Joost
van Baal-Ilić Date: Mon Nov 25 07:20:47 2013 +0100
2013-11-22 Joost van Baal-Ilić
* caspar/TODO: tnx casper for noticing me
2013-11-21 Joost van Baal-Ilić
* caspar/NEWS: pick a name for upcoming release. Bakertand, near
Trouwlaan and Katsbogte
2013-11-21 Joost van Baal-Ilić
* caspar/TODO: чет 21 07:26 Fruit: 1.2) wait for and apply Fruit
patches чет 21 07:26 Fruit: staat in caspar TODO чет 21 07:26
Fruit: had je nog wat liggen? чет 21 07:26 Fruit: nu is het
moment чет 21 08:31 euhw. geen idee чет 21 09:12 Fruit: a ok
dan чет 21 09:56 n bug in mn todo dus :)
2013-11-21 Joost van Baal-Ilić
* caspar/NEWS: document changes
2013-11-21 Joost van Baal-Ilić
* caspar/TODO, caspar/doc/Makefile.am: working on tidy-bug
2013-11-21 Joost van Baal-Ilić
* caspar/TODO: two bugs have been fixed, update TODO
2013-11-21 Joost van Baal-Ilić
* caspar/bootstrap: update from automake/aclocal 1.11 to 1.14
2013-11-21 Joost van Baal-Ilić
* caspar/TODO, caspar/doc/csp_helper.azm: working on fixing the
csp_mkdircp documentation bug
2013-11-21 Joost van Baal-Ilić
* caspar/TODO, caspar/doc/caspar.azm: one bug has been fixed, update
TODO
2013-11-19 Joost van Baal-Ilić
* caspar/NEWS: start next release
2013-11-19 Joost van Baal-Ilić
* caspar/script/csp_sucp: feed not just $3, but also any more args
as files to tar
2013-11-19 Joost van Baal-Ilić
* caspar/NEWS: ship it: version 20131119 - The Sint Agatha Release
2013-11-19 Joost van Baal-Ilić
* caspar/NEWS: update NEWS"
2013-05-21 Joost van Baal-Ilić
* caspar/doc/csp_helper.azm: update csp_sucp description: we use
tar, not cat. furthermore, we no longer suffer from password-prompt
bug
2013-05-21 Joost van Baal-Ilić
* caspar/doc/csp_helper.azm: document how to use csp_sucp with
interactive sudo password prompt
2013-05-21 Joost van Baal-Ilić
* caspar/script/csp_sucp: run sudo non-interactive (-n) when stdin
is filled with tar data
2013-05-21 Joost van Baal-Ilić
* caspar/script/csp_sucp: csp_sucp: explicitly get rid of tty when
stdin is filled with tar in order to make sure this data will not
get interpreted as password for sudo
2013-05-21 Joost van Baal-Ilić
* caspar/script/csp_sucp: csp_sucp: explicitly pass c to tar. (GNU
tar) 1.26 needs at least one option.
2013-05-21 Joost van Baal-Ilić
* caspar/script/csp_sucp: csp_sucp: pass -t to ssh, not -T, when
refreshing sudo password. gets rid of error message "sudo: no tty
present and no askpass program specified "
2013-03-19 Joost van Baal-Ilić
* caspar/mk/caspar.mk: Swap dealing with $(csp_TABOOFILES) and
$(csp_BUILD) in contructing FILES to be install-ed. Now
$(csp_TABOOFILES) is subtracted from $(csp_BUILD) (was: $(csp_BUILD)
gets added to result of subtracting $(csp_TABOOFILES) from list of
FILES. So, now "csp_BUILD = check" and "csp_TABOOFILES_ADD = check"
no longer results in caspar trying to install a file called 'check'.
2013-03-18 Joost van Baal-Ilić
* caspar/TODO: tnx Wessel
2012-10-15 Joost van Baal-Ilić
* caspar/NEWS: name the upcoming release. Kruisheren Klooster
2012-05-31 Joost van Baal-Ilić
* debian/changelog: oops, we _did_ upload 20120514-1
2012-05-30 Joost van Baal-Ilić
* debian/changelog: new debian upload: 20120530-1
2012-05-30 Joost van Baal-Ilić
* caspar/NEWS: start next release
2012-05-30 Joost van Baal-Ilić
* caspar/NEWS: version 20120530 - The Miekoekse Release
2012-05-29 Joost van Baal-Илић
* caspar/doc/Makefile.am, caspar/doc/csp_helper.azm,
caspar/doc/csp_mkdircp.1, caspar/script/Makefile.am,
caspar/script/csp_mkdircp: install csp_mkdircp, install manpage
2012-05-29 Joost van Baal-Илић
* caspar/script/csp_install: remove obsolete comment
2012-05-16 Joost van Baal-Ilić
* caspar/NEWS: remove extraneous entry
2012-05-14 Wessel Dankers
* caspar/NEWS, caspar/mk/caspar.mk: caspar/mk/caspar.mk: do not run
bulktargets if no files are available Signed-off-by: Joost van Baal-Ilić
2012-05-16 Joost van Baal-Ilić
* debian/changelog: new upstream
2012-05-14 Joost van Baal-Ilić
* caspar/TODO, caspar/mk/caspar.mk: new csp_PUSH mechanism:
csp_mkdircp_FUNC
2012-05-14 Joost van Baal-Ilić
* caspar/script/csp_mkdircp: add yet another caspar helper
2012-05-14 Joost van Baal-Ilić
* caspar/TODO: http://mdcc.cx/caspar updated: bug fixed
2012-05-14 Joost van Baal-Ilić
* caspar/NEWS: caspar version 20120514 - The Железничка
Release
2012-05-14 Joost van Baal-Ilić
* caspar/NEWS, caspar/TODO: cosmetics
2012-05-14 Joost van Baal-Ilić
* caspar/TODO: plan for fixing breakage
2012-05-14 Joost van Baal-Ilić
* caspar/NEWS, caspar/TODO, caspar/script/csp_sucp: new csp_sucp:
s/cat/tar/, multisupport
2012-05-11 Joost van Baal-Ilić
* caspar/NEWS, caspar/TODO: document breakage introduced by
bulktargets support
2012-05-11 Joost van Baal-Ilić
* caspar/NEWS: start documenting Wessel patch
2012-05-11 Wessel Dankers
* caspar/mk/caspar.mk: prevent spurious whitespace from being
introduced Signed-off-by: Joost van Baal-Ilić
2012-05-11 Wessel Dankers
* caspar/mk/caspar.mk: install multiple files in one bulk operation Signed-off-by: Joost van Baal-Ilić
2012-05-11 Joost van Baal-Ilić
* caspar/TODO, caspar/mk/caspar.mk: csp_SUCP now supports setting
csp_SUCP_USER from within Makefile: interface restored (still not
fully documented)
2012-05-09 Joost van Baal-Ilić
* caspar/TODO: more test results
2012-05-09 Joost van Baal-Ilić
* caspar/TODO: tnx Wessel
2012-05-09 Joost van Baal-Ilić
* : commit 2967718261c46501dec5f562ab5f59265363054f Author: Joost
van Baal-Ilić Date: Wed May 9 09:17:16 2012 +0200
2012-05-08 Joost van Baal-Ilić
* debian/changelog: ship it
2012-05-08 Joost van Baal-Ilić
* caspar/Makefile.am, caspar/NEWS: start the The
Железничка Release
2012-05-08 Joost van Baal-Ilić
* caspar/NEWS, caspar/TODO, caspar/doc/Makefile.am: release 20120508
2012-05-08 Joost van Baal-Ilić
* caspar/doc/caspar-typesetting.azm, caspar/doc/caspar.azm,
caspar/doc/csp_helper.azm: attempt to fix zoem syntax errors
2012-05-08 Joost van Baal-Ilić
* debian/changelog, debian/watch: add watch for uscan
2012-05-08 Joost van Baal-Ilić
* caspar/doc/Makefile.am, debian/watch: caspar documentation
typesetting: be picky upon errors (and warnings) about html syntax.
assume html is in utf8
2012-05-08 Joost van Baal-Ilić
* debian/changelog: new .deb release
2012-05-08 Joost van Baal-Ilić
* caspar/NEWS, caspar/TODO, debian/changelog: start next release
2012-05-07 Joost van Baal-Ilić
* caspar/NEWS, caspar/TODO: release 20120420, for Danishka Navin
2012-05-07 Joost van Baal-Ilić
* caspar/NEWS: cosmetics
2012-05-07 Joost van Baal-Ilić
* caspar/NEWS: fix dedication
2012-05-07 Joost van Baal-Ilić
* caspar/NEWS, caspar/TODO: prepare release 20120420
2012-04-20 Joost van Baal-Ilić
* caspar/script/csp_sucp: csp_sucp now honors CSP_DEBUG
2012-04-19 Joost van Baal-Ilić
* caspar/TODO: cleanup
2012-04-19 Joost van Baal-Ilić
* caspar/NEWS, caspar/TODO: upcoming release is for Danishka from
Ambalagoda
2012-04-18 Joost van Baal-Ilić
* caspar/NEWS, caspar/doc/caspar.azm: document new csp_PUSH
interface, support for csp_XARG is dropped
2012-04-18 Joost van Baal-Ilić
* caspar/NEWS: record some changes
2012-04-18 Joost van Baal-Ilić
* caspar/NEWS: named singalese caspar releases
2012-04-17 Joost van Baal-Ilić
* caspar/mk/caspar.mk: add (undocumented) target "debug". fix bug,
caspar now somewhat usable again, first example of caspar manpage
works
2012-04-17 Joost van Baal-Ilić
* caspar/TODO: stuff to do: unbreak
2012-04-17 Joost van Baal-Ilić
* caspar/NEWS, debian/changelog: preliminary experimental
non-published release 20120417
2012-04-17 Joost van Baal-Ilić
* caspar/Makefile.am: deal more sane with suppressing emailadresses
in ChangeLog generating
2012-04-16 Joost van Baal-Ilić
* caspar/NEWS: started documenting changes
2012-04-16 Joost van Baal-Ilić
* caspar/mk/caspar.mk: csp_DIFFXARG support reimplemented (in a
slightly less flexible way)
2012-04-16 Joost van Baal-Ilić
* caspar/mk/caspar.mk: csp_DIFFXARG no longer supported
2012-04-16 Joost van Baal-Ilić
* caspar/mk/caspar.mk: fixed csp_scp_FUNC and some other FUNCs to
use new csp_PUSH argument ordering
2012-04-16 Joost van Baal-Ilić
* caspar/doc/csp_helper.azm: updated for new helper arguments
2012-04-15 Joost van Baal-Ilić
* caspar/mk/caspar.mk: the -t-issue: swap args. wip. now completely
borken
2012-04-15 Joost van Baal-Ilić
* caspar/script/csp_sucp: fix bug in $CSP_SUCP_USER processing
2012-04-15 Joost van Baal-Ilić
* caspar/script/csp_sucp: swap arguments: now csp_sucp (was: file
[user@]host dir [su-user])
2012-04-15 Joost van Baal-Ilić
* caspar/script/csp_scp_keep_mode: swap arguments: now
csp_scp_keep_mode
2012-04-15 Joost van Baal-Ilić
* caspar/script/csp_install: swap arguments: now csp_install
2012-04-14 Joost van Baal-Ilić
* caspar/TODO: the -t-issue
2012-04-13 Joost van Baal-Ilić
* debian/changelog, debian/control: debian/control: bumped
Standards-Version: from 3.9.1 to 3.9.3 (no changes needed).
2012-04-13 Joost van Baal-Ilić
* debian/changelog, debian/rules: debian/rules: add build-arch and
build-indep targets (thanks lintian).
2012-04-13 Joost van Baal-Ilić
* debian/caspar-doc.doc-base.caspar-typesetting, debian/changelog:
debian/caspar-doc.doc-base.caspar-typesetting: fix spelling error
(thanks lintian).
2012-04-13 Joost van Baal-Ilić
* debian/changelog, debian/control: update my name
2012-04-13 Joost van Baal-Ilić
* debian/changelog, debian/copyright: copyright updated
2012-04-12 Joost van Baal-Ilić
* debian/changelog: new upstream
2012-04-12 Joost van Baal-Ilić
* debian/changelog: no longer inspect DEB_BUILD_OPTIONS for debug or
nostrip: we are arch independent
2012-04-12 Joost van Baal-Ilić
* debian/rules: no longer inspect DEB_BUILD_OPTIONS for debug or
nostrip: we are arch independent
2012-03-22 Joost van Baal-Ilić
* caspar/TODO, caspar/doc/include.zmm: new zoem syntax, still
2012-03-22 Joost van Baal-Ilić
* caspar/TODO: more to do
2012-03-22 Joost van Baal-Ilić
* caspar/TODO: more to do
2012-03-22 Joost van Baal-Ilić
* caspar/doc/casparize.azm: new zoem syntax
2012-03-22 Joost van Baal-Ilić
* caspar/doc/Makefile.am: "make maintainerclean" now more
aggresively
2012-03-22 Joost van Baal-Ilić
* caspar/Makefile.am: moved caspar website to new host
2012-03-22 Joost van Baal-Ilić
* caspar/AUTHORS, caspar/Makefile.am, caspar/doc/include.zmm,
caspar/mk/caspar.mk: updated year of copyright, updated my name
2012-03-22 Joost van Baal-Ilić
* caspar/TODO: found autotools buildproblem
2012-03-22 Joost van Baal-Ilić
* caspar/TODO: one more thing to do before release
2012-03-22 Joost van Baal-Ilić
* caspar/doc/caspar-typesetting.azm, caspar/doc/caspar.azm:
converting to new zoem syntax: ongoing
2012-03-22 Joost van Baal-Ilić
* caspar/NEWS, caspar/doc/caspar-typesetting.azm,
caspar/doc/caspar.azm, caspar/doc/casparize.azm,
caspar/doc/csp_helper.azm: converting to new zoem syntax
2012-03-22 Joost van Baal-Ilić
* caspar/setversion: never include date +%b output in VERSION
2012-03-21 Joost van Baal-Ilić
* caspar/NEWS: document changes
2012-03-21 Joost van Baal-Ilić
* caspar/doc/caspar-typesetting.azm, caspar/doc/caspar.azm,
caspar/doc/casparize.azm, caspar/doc/csp_helper.azm,
caspar/doc/include.zmm: converting to aephea >= 10.008-1, zoem >=
11-166-1
2012-03-21 Joost van Baal-Ilić
* caspar/NEWS, caspar/TODO, caspar/doc/caspar.azm,
caspar/mk/caspar.mk: drop support for csp_CPDIR and csp_CPDIRS
2012-03-21 Joost van Baal-Ilić
* caspar/NEWS, caspar/TODO, caspar/doc/caspar.azm: document csp_LOAD
$1 trick
2012-03-21 Joost van Baal-Ilić
* caspar/NEWS, caspar/TODO, caspar/doc/caspar.azm: document
csp_UHOSTS_SKIP
2012-03-21 Joost van Baal-Ilić
* caspar/NEWS: document changes
2012-03-21 Joost van Baal-Ilić
* caspar/TODO, caspar/doc/caspar.azm, caspar/mk/caspar.mk: implement
csp_scpmkdir_FUNC (and csp_MKDIRP)
2011-11-13 Joost van Baal-Ilić
* caspar/TODO: tnx Wessel for another idea
2011-11-13 Joost van Baal-Ilić
* caspar/TODO: some stuff is done
2011-11-13 Joost van Baal-Ilić
* caspar/TODO, caspar/doc/caspar.azm: manpage improvement
2011-11-13 Joost van Baal-Ilić
* caspar/NEWS: record changes
2011-11-11 Joost van Baal-Ilić
* caspar/TODO: more to do
2011-11-11 Joost van Baal-Ilić
* caspar/doc/caspar.azm: document csp_scpmkdir_FUNC-trick. thanks
Casper Gielen for idea
2011-06-18 Joost van Baal-Ilić
* caspar/doc/caspar.azm: add example: using csp_install_FUNC for
installing on local host
2011-06-18 Joost van Baal-Ilić
* caspar/doc/caspar.azm, caspar/doc/csp_helper.azm: finished
csp_helper manpage: no more FIXMEs
2011-06-08 Joost van Baal-Ilić
* : more to do
2011-03-11 Joost van Baal
* caspar/TODO, caspar/doc/caspar.azm: got rid of some FIXMEs in
manpage: s/ssh/csp_SSH/
2011-02-25 Joost van Baal
* caspar/TODO: tnx Casper Gielen
2011-02-12 Joost van Baal
* caspar/TODO, caspar/doc/caspar.azm: more to do
2011-02-12 Joost van Baal
* debian/control: fix typo in description
2011-02-12 Joost van Baal
* caspar/TODO: more to do
2011-02-12 Joost van Baal
* caspar/README: update info on commit mailing list
2011-02-12 Joost van Baal
* caspar/doc/Makefile.am: make sure .1 without source does not get
removed in "clean" target
2011-02-12 Joost van Baal
* debian/changelog, debian/control: new debian packages
2011-02-12 Joost van Baal
* caspar/doc/caspar.azm, debian/changelog, debian/control: enhance
description, mention puppet/cfengine
2011-02-12 Joost van Baal
* debian/changelog, debian/control: update suggests: new
packagenames
2011-02-12 Joost van Baal
* debian/changelog, debian/rules: new debhelper features
2011-02-12 Joost van Baal
* debian/changelog, debian/compat, debian/control: bump debhelper
2011-02-12 Joost van Baal
* debian/changelog, debian/control: bumped standards
2011-02-12 Joost van Baal
* debian/caspar-doc.install, debian/changelog, debian/compat,
debian/control, debian/docs, debian/rules: remove obsolete CVS tags
2011-01-20 Joost van Baal
* debian/changelog: new upstream
2010-12-04 Joost van Baal
* caspar/Makefile.am: enhance private publish-target
2010-12-04 Joost van Baal
* caspar/NEWS: record changes, release
2010-12-04 Joost van Baal
* caspar/TODO: TODO: document UI change introduced by latest
contributed patch
2010-11-19 Wessel Dankers
* caspar/mk/caspar.mk: add $(csp_UHOSTS_SKIP) feature: exclude hosts Signed-off-by: Joost van Baal
2010-11-19 Wessel Dankers
* caspar/mk/caspar.mk: combine file lists less clumsily Signed-off-by: Joost van Baal
2010-06-24 Joost van Baal
* debian/changelog: new upstream
2010-06-24 Joost van Baal
* caspar/NEWS: record changes, release 20100624
2010-05-31 Wessel Dankers
* caspar/mk/caspar.mk: fix load-target-as-a-variable didn't work
because $(call ...) was expanded too early Signed-off-by: Joost van Baal
2010-04-25 Joost van Baal
* debian/changelog: Switch to dpkg-source 3.0 (quilt) format
2010-04-25 Joost van Baal
* debian/source/format: Switch to dpkg-source 3.0 (quilt) format
2010-03-29 Joost van Baal
* debian/changelog: upload
2010-02-28 Joost van Baal
* caspar/TODO: found another bug, encountered when dealing with
wacky filenames
2010-02-23 Joost van Baal
* caspar/TODO: start draft documenting loadtarget
2010-02-23 Joost van Baal
* debian/changelog, debian/control: housekeeping
2010-02-23 Joost van Baal
* caspar/doc/Makefile.am: get rid of files left in build directory
after distclean
2010-02-23 Joost van Baal
* caspar/NEWS: record changes
2010-02-23 Joost van Baal
* caspar/doc/csp_install.1, caspar/doc/csp_scp_keep_mode.1,
caspar/doc/csp_sucp.1: extra manpages: so requests
2010-02-23 Joost van Baal
* caspar/TODO: ship it: 20100223
2010-02-23 Joost van Baal
* caspar/Makefile.am, caspar/TODO, caspar/bootstrap: get rid of
cvs2cl references
2010-02-23 Joost van Baal
* caspar/Makefile.am, caspar/NEWS, caspar/bootstrap: use git2cl
2010-02-23 Joost van Baal
* caspar/TODO, caspar/mk/caspar.mk: update year in copyright
2010-01-15 Wessel Dankers
* caspar/mk/caspar.mk: handle special characters in filenames a
little better Signed-off-by: Joost van Baal
2009-12-18 Wessel Dankers
* caspar/NEWS, caspar/TODO, caspar/mk/caspar.mk: csp_LOAD values are
now defined as variables Signed-off-by: Joost van Baal
2009-12-16 Joost van Baal
* caspar/NEWS: tweak layout
2009-12-15 Wessel Dankers
* caspar/TODO: Number entries in TODO file (awk
'BEGIN{a=1;b=1}/^---/{a++;b=1}{if(gsub("^- ", a"."b") ")) b++}1') Signed-off-by: Joost van Baal
2009-12-15 Wessel Dankers
* caspar/NEWS, caspar/TODO, caspar/mk/caspar.mk: fix error checking
when running commands Signed-off-by: Joost van Baal
2009-12-16 Joost van Baal
* caspar/TODO: Revert "Number entries in TODO file"; since this
patch was not cleanly cherrypickable. This reverts commit 18d15886c98a5a553f78dd74514fbf0540a5d02d.
2009-12-15 Wessel Dankers
* caspar/TODO: Number entries in TODO file (awk
'BEGIN{a=1;b=1}/^---/{a++;b=1}{if(gsub("^- ", a"."b") ")) b++}1')
2009-12-13 Joost van Baal
* caspar/README, caspar/TODO: migration to git
2009-12-13 Joost van Baal
* caspar/TODO: more stuff to to for migrating from CVS to git
2009-12-13 Joost van Baal
* caspar/NEWS, caspar/TODO: conversion from CVS to git
2009-11-14 joostvb
* debian/changelog, debian/control: oops
2009-11-14 joostvb
* debian/changelog: ship it
2009-11-14 joostvb
* caspar/NEWS, caspar/doc/.cvsignore, caspar/doc/casparize.azm:
caspar version 20091115
2009-11-14 joostvb
* debian/caspar-doc.install, debian/caspar.README.Debian,
debian/changelog, debian/control, debian/rules: shuffle docs between
caspar and caspar-doc
2009-11-14 joostvb
* debian/caspar-doc.doc-base.csp_helper,
debian/caspar-doc.doc-base.csp_sucp, debian/changelog, debian/rules:
Renamed caspar-doc.doc-base.csp_sucp to
caspar-doc.doc-base.csp_helper.
2009-11-14 joostvb
* caspar/NEWS, caspar/TODO, caspar/doc/caspar-typesetting.azm,
caspar/doc/caspar.azm, caspar/doc/casparize.azm,
caspar/doc/csp_helper.azm: fixed manpage crosslinking
2009-11-14 joostvb
* caspar/doc/casparize.azm: caspar(1) is now called casparize
2009-11-14 joostvb
* caspar/NEWS, caspar/TODO, caspar/doc/Makefile.am,
caspar/doc/caspar1.azm, caspar/doc/casparize.azm,
caspar/script/Makefile.am, caspar/script/caspar,
caspar/script/casparize: Renamed caspar(1) to casparize(1)
2009-11-14 joostvb
* caspar/TODO: one more before the debian upload
2009-11-14 joostvb
* caspar/doc/csp_helper.azm: fix typo
2009-11-14 joostvb
* caspar/NEWS, caspar/TODO: release 20091114
2009-11-14 joostvb
* caspar/doc/.cvsignore: [no log message]
2009-11-14 joostvb
* caspar/doc/.cvsignore, caspar/doc/Makefile.am,
caspar/doc/csp_install.1, caspar/doc/csp_scp_keep_mode.1,
caspar/doc/csp_sucp.1: csp_helper(1) is the same manpage as
csp_install(1), csp_scp_keep_mode(1) and csp_sucp(1)
2009-11-14 joostvb
* caspar/doc/csp_helper.azm, caspar/doc/csp_sucp.azm: csp_sucp
manpage merged in new csp_helper(1)
2009-10-27 joostvb
* caspar/TODO: reschedule
2009-10-24 joostvb
* caspar/TODO: apply patch from Wessel Dankers
2009-09-29 joostvb
* caspar/mk/caspar.mk, caspar/script/csp_install: define
csp_install_FUNC and csp_scp_keep_mode_FUNC in caspar.mk in order to
make UI more usable
2009-09-26 joostvb
* debian/changelog: changelog timestamp should be time of _last_
change
2009-09-26 joostvb
* debian/changelog, debian/control: bumped standards
2009-09-26 joostvb
* caspar/NEWS, caspar/THANKS: fixed a bug in caspar1.azm, this is
release 20090926 (really)
2009-09-26 joostvb
* caspar/bootstrap, caspar/doc/caspar1.azm, caspar/setversion: move
from automake 1.10 to 1.11
2009-09-26 joostvb
* caspar/NEWS, caspar/TODO, caspar/script/csp_scp_keep_mode: version
20090926
2009-09-26 joostvb
* caspar/NEWS, caspar/TODO, caspar/script/Makefile.am,
caspar/script/csp_install, caspar/script/csp_scp_keep_mode: add
csp_install and csp_scp_keep_mode: 2 scripts for more robust
installs
2009-09-09 joostvb
* caspar/TODO: thanks Thijs K, Wessel
2009-09-01 joostvb
* caspar/TODO: another way to call mkdir if needed
2009-08-12 joostvb
* caspar/doc/Makefile.am, caspar/doc/caspar1.azm,
caspar/script/Makefile.am, caspar/script/caspar: typeset and install
docs and script, cvs tags
2009-08-12 joostvb
* caspar/doc/caspar1.azm, caspar/script/caspar: add license info as
per: wo 12 15:08 hoppie: en is t gpl v 3 or (at your option) any
later version ? wo 12 15:08 any later wo 12 15:09 hu wat? wo 12
15:09 Ik ga even proberen om dit te schrijven, maar ik weet niet of
ik Zoom c.s. heb staan. GPL 3 en later. [18:16] [joostvb(+i)]
[9:meuknet/#uvt]
2009-08-12 joostvb
* caspar/doc/caspar1.azm, caspar/script/caspar: Add contributions
from Jeroen Hoppenbrouwers, in Message-ID: , Date: Sat, 25 Jul 2009
14:18:43 +0200 and Message-Id: , Date: Wed, 12 Aug 2009 17:37:30
+0200 (CEST).
2009-07-13 joostvb
* caspar/TODO: record feature request from Arvid Gibas
2009-06-22 joostvb
* debian/changelog, debian/copyright: pending commit: license
2009-06-22 joostvb
* debian/TODO, debian/caspar-doc.doc-base.caspar,
debian/caspar-doc.doc-base.caspar-typesetting,
debian/caspar-doc.doc-base.csp_sucp, debian/changelog: fix doc-bae
stuff, release
2009-06-22 joostvb
* debian/TODO, debian/caspar-doc.doc-base.caspar, debian/changelog,
debian/control: bumped standards
2009-06-22 joostvb
* caspar/NEWS, caspar/TODO, caspar/setversion: allow for user
override of version
2009-04-07 joostvb
* caspar/TODO: more wishlist bugs by Wessel Dankers
2009-04-07 joostvb
* debian/changelog, debian/copyright: license
2009-04-07 joostvb
* debian/changelog, debian/control: tnx lintian
2009-04-06 joostvb
* caspar/NEWS: (snapshot) release 20090406
2009-04-06 joostvb
* caspar/NEWS, caspar/mk/caspar.mk: use csp_DIFF for user interface,
not csp_COMP: consistency
2009-04-06 joostvb
* caspar/NEWS, caspar/TODO, caspar/mk/caspar.mk: add support for
rsync(1). Thanks Ko van der Sloot for the suggestion
2009-04-06 joostvb
* caspar/NEWS, caspar/TODO: documented behaviour of diff target when
using csp_CP_FUNC in NEWS, added plan for fix to TODO
2009-04-05 joostvb
* caspar/NEWS, caspar/TODO, caspar/mk/caspar.mk: implent "diff" make
target
2009-04-05 joostvb
* caspar/NEWS, caspar/TODO: add upgrade scenario
2009-04-05 joostvb
* caspar/NEWS, caspar/TODO: record changes: GPL v3
2009-04-05 joostvb
* caspar/bootstrap, caspar/configure.ac, caspar/doc/Makefile.am,
caspar/mk/caspar.mk, caspar/mk/docbook.mk, caspar/mk/pod.mk: Now
licensed under GPL v3 (not 2). Use automake 1.10, not 1.9
2009-03-15 joostvb
* caspar/NEWS, caspar/THANKS: record changes, add hoppie to THANKS
2009-03-15 joostvb
* caspar/NEWS, caspar/README, caspar/TODO, caspar/doc/caspar.azm,
caspar/mk/caspar.mk: Support for csp_SUH, csp_SUHS, csp_SUHDIRS and
csp_SCPDIR is dropped.
2009-03-15 joostvb
* caspar/TODO: tnx Fruit
2009-03-14 joostvb
* caspar/TODO: more user feedback for wishlist bug prio
2009-03-14 joostvb
* caspar/TODO: [no log message]
2009-03-14 joostvb
* caspar/TODO: reschedule prio of wishlist bugs, by popular request
2009-02-05 joostvb
* caspar/TODO: Bug: ``The function $(subst -install,,$@) in
caspar.mk breaks when filename itself has the substring -install.
We should strip only a _trailing_ '-install' from the maketarget.''
is now fixed.
2009-02-05 joostvb
* caspar/mk/caspar.mk: bugfix: deal sane with files named like
"debian-lenny-install.txt": files which had "-install" in their
never got install-ed
2008-12-21 joostvb
* caspar/doc/caspar.azm: tnx hoppie for caspar blog
2008-12-15 joostvb
* caspar/sgml/print.dsl: bugfix:
jade:/usr/share/sgml/caspar/print.dsl:126:24:E: element "SYSTEMITEM"
undefined
2008-09-21 joostvb
* caspar/TODO: added another wishlist bug
2008-04-28 joostvb
* caspar/doc/caspar.azm: add another example: sudo without ssh
2007-11-23 joostvb
* caspar/TODO: jhoeke found a bug: caspar chokes on : in filenames
2007-09-02 joostvb
* caspar/TODO: [no log message]
2007-09-02 joostvb
* caspar/TODO.local: remove obsolete stuff
2007-08-15 joostvb
* debian/changelog: release it
2007-08-15 joostvb
* debian/control: new debhelper
2007-07-31 joostvb
* caspar/TODO: add some new ideas. thanks Fred Vos
2007-07-29 joostvb
* caspar/TODO: [no log message]
2007-07-29 joostvb
* caspar/TODO: more to do
2007-07-29 joostvb
* debian/changelog, debian/compat, debian/dirs, debian/docs: [no log
message]
2007-07-29 joostvb
* debian/changelog, debian/compat: bump dh compat
2007-07-29 joostvb
* debian/changelog, debian/rules: conditionally run make distclean
2007-07-29 joostvb
* debian/changelog, debian/compat, debian/rules: Move DH_COMPAT from
debian/rules to debian/compat
2007-07-29 joostvb
* debian/changelog, debian/control: get rid of obsolete cruft
2007-07-29 joostvb
* debian/changelog, debian/control: fix typo
2007-07-29 joostvb
* caspar/NEWS, caspar/THANKS, caspar/doc/ChangeLog.2002: [no log
message]
2007-07-29 joostvb
* caspar/Makefile.am: new host for publishing tarball: mdcc.cx
hoster moved
2007-07-29 joostvb
* caspar/NEWS: release 20070729
2007-07-29 joostvb
* caspar/TODO.local, caspar/mk/caspar.mk: [no log message]
2007-07-29 joostvb
* caspar/TODO: reported a bug in csp_BUILD
2007-07-29 joostvb
* caspar/doc/caspar.azm: added another usage example for csp_LOAD:
adding a "check" target
2007-07-29 joostvb
* caspar/doc/caspar.azm: added example usage of csp_BUILD
2007-07-29 joostvb
* caspar/NEWS, caspar/README, caspar/THANKS, caspar/TODO,
caspar/doc/caspar.azm: refer to document "Versiebeheer en
software-packages: Waarom en Hoe". plan phaseout of obsolete
variables csp_SUHS
2007-07-29 joostvb
* caspar/TODO: Tested csp_UHOSTS_SUBSET. Gave example toplevel
Makefile without need to install Makefiles in all non-leaf
directories too in caspar(7). Thanks Wessel Dankers.
2007-07-29 joostvb
* caspar/doc/caspar.azm: documented csp_UHOSTS_SUBSET
2007-07-28 joostvb
* caspar/TODO: users vote for a quick implementation of
csp_UHOSTS_SUBSET
2007-07-28 joostvb
* caspar/TODO: some cleanup of TODO items
2007-07-13 joostvb
* caspar/NEWS: release 20070713
2007-07-13 joostvb
* caspar/TODO: report more issues found by UvT caspar user community
2007-05-21 joostvb
* caspar/NEWS: be more clear about the fixed bug
2007-05-19 joostvb
* caspar/doc/caspar.azm: the cvs-conf package has disappeared from
the internet: stop mentioning it
2007-05-12 joostvb
* caspar/doc/caspar.azm: add infrastructures.org link
2007-04-18 joostvb
* debian/changelog, debian/control: changes inspired by tetex-live
entering debian
2007-03-15 joostvb
* caspar/TODO: bug found by Mark van Diem
2007-02-14 joostvb
* caspar/TODO: two more wishlist bugs
2007-02-09 joostvb
* caspar/doc/caspar.azm: improved manpage after suggestion from Jan
Kooistra
2007-02-06 joostvb
* caspar/TODO: hint for migration
2007-02-05 joostvb
* caspar/TODO: more stuff to document
2007-01-30 joostvb
* rpm/caspar.spec, rpm/rpm.log: install doc, now builds
2007-01-30 joostvb
* rpm/caspar.spec: first shot at building an rpm for this package
2007-01-11 joostvb
* caspar/TODO: found out about ssh ControlMaster
2007-01-11 joostvb
* caspar/TODO: people _keep_ asking for this
2006-12-12 joostvb
* caspar/NEWS: [no log message]
2006-12-12 joostvb
* caspar/script/csp_sucp: sudo: the `-u' and '-v' options may not be
used together
2006-11-30 joostvb
* caspar/TODO: document idea for toplevel Makefile from Wessel
Dankers
2006-10-29 joostvb
* caspar/mk/caspar.mk: deal sane with empty csp_UHOSTS_SUBSET
2006-10-23 joostvb
* caspar/TODO, caspar/mk/caspar.mk: first untested and undocumented
implementation of csp_UHOSTS_SUBSET
2006-10-23 joostvb
* caspar/TODO: clarify what we want
2006-08-31 joostvb
* caspar/TODO: one way to call mkdir if appropriate. Thanks Wessel
Dankers
2006-07-09 joostvb
* caspar/doc/caspar.azm: yet another alternative
2006-06-18 joostvb
* debian/changelog: announce change in ui
2006-06-18 joostvb
* debian/changelog: new upstream
2006-06-18 joostvb
* caspar/NEWS: release 20060618
2006-06-18 joostvb
* caspar/TODO: caspar(7) can get improved even more
2006-06-18 joostvb
* caspar/doc/caspar.azm: cosmetics
2006-06-18 joostvb
* caspar/doc/caspar.azm: minor bugfixes
2006-06-18 joostvb
* caspar/TODO, caspar/doc/caspar.azm: added example combining
csp_sucp_FUNC and csp_LOAD to caspar(7)
2006-06-12 joostvb
* caspar/TODO: another real-life example
2006-06-10 joostvb
* caspar/Makefile.am: don't rebuild before publishing tarballs
2006-06-10 joostvb
* debian/changelog, debian/copyright: [no log message]
2006-06-10 joostvb
* caspar/NEWS: (snapshot) release 20060610
2006-06-10 joostvb
* caspar/doc/caspar.azm: document csp_UHOST
2006-06-10 joostvb
* caspar/TODO, caspar/doc/caspar.azm: suggest private variable
my_EXEC for abstracting ssh. caspar now abstracts scp and csp_sucp;
for now users should deal with abstracting ssh and sudo themselves
2006-06-10 joostvb
* caspar/TODO, caspar/doc/caspar.azm: add note on (in)sanity of
choosing GNU Make to implement caspar
2006-06-10 joostvb
* caspar/TODO, caspar/doc/Makefile.am, caspar/doc/caspar.azm,
caspar/doc/include.zmm, caspar/mk/caspar.mk, caspar/mk/docbook.mk:
updated copyright: 2006
2006-06-10 joostvb
* caspar/TODO, caspar/mk/caspar.mk: remove support for csp_scp_DIR
csp_scp_UHOSTS csp_scp_UHOST csp_cp_DIR from caspar.mk
2006-06-10 joostvb
* caspar/NEWS, caspar/TODO, caspar/doc/caspar.azm: removing *_scp_*
variables, phase 1
2006-06-09 joostvb
* caspar/TODO: more ideas after brainstorming with Wessel Dankers.
Tnx.
2006-06-08 joostvb
* debian/changelog: [no log message]
2006-06-08 joostvb
* caspar/NEWS: (snapshot) release 20060608
2006-06-08 joostvb
* caspar/TODO, caspar/doc/caspar.azm: add example "Plugging your own
install script in caspar" to caspar(7)
2006-06-07 joostvb
* caspar/NEWS, caspar/TODO: updates
2006-06-07 joostvb
* caspar/TODO, caspar/mk/caspar.mk: new variable csp_BUILD, to
execute optional build target before install
2006-06-07 joostvb
* caspar/mk/caspar.mk: fix bug in combining csp_SCPFLAGS with
csp_UHOSTS
2006-06-07 joostvb
* caspar/NEWS, caspar/mk/caspar.mk: Drop support for csp_sucp_UHOST,
csp_sucp_DIR, and csp_sucp_USER. One should just uses csp_UHOST(S),
csp_DIR and csp_XARG, and set csp_PUSH. Removed backwards
compatibility rule from caspar.mk.
2006-06-07 joostvb
* caspar/doc/caspar.azm: add some examples for simple usage
2006-06-05 joostvb
* caspar/TODO: [no log message]
2006-06-05 joostvb
* caspar/doc/caspar.azm: use new style variable names in all
examples. more details on overruling variables on commandline
2006-06-05 joostvb
* caspar/mk/caspar.mk: fix bug in backwards compatibility mode.
would have shown up when combining csp_SCPDIR with csp_SUHS
2006-06-01 joostvb
* caspar/TODO, caspar/doc/caspar.azm: fixed first example in
caspar(7)
2006-05-31 joostvb
* debian/caspar-doc.doc-base.csp_sucp, debian/caspar-doc.install,
debian/changelog, debian/control, debian/rules: [no log message]
2006-05-31 joostvb
* debian/changelog: [no log message]
2006-05-31 joostvb
* caspar/doc/caspar-typesetting.azm, caspar/doc/caspar.azm,
caspar/doc/csp_sucp.azm, caspar/doc/include.zmm: make csp_sucp(1)
announce itself under the right man section
2006-05-31 joostvb
* caspar/TODO: idea to make the default install rule more pluggable
2006-05-31 joostvb
* caspar/NEWS: snapshot release 20060531
2006-05-31 joostvb
* caspar/doc/caspar.azm: fix typesetting
2006-05-31 joostvb
* caspar/NEWS, caspar/doc/caspar-typesetting.azm,
caspar/doc/caspar.azm, caspar/script/Makefile.am: make it typeset
with zoem 06-080
2006-05-31 joostvb
* caspar/TODO, caspar/doc/caspar-typesetting.azm,
caspar/doc/caspar.azm, caspar/doc/csp_sucp.azm: add note on
sshd_config PermitRootLogin to caspar(7)
2006-05-31 joostvb
* caspar/doc/.cvsignore, caspar/script/.cvsignore: [no log message]
2006-05-31 joostvb
* caspar/TODO, caspar/doc/caspar-typesetting.azm: add reference to
latex-make utility
2006-05-31 joostvb
* debian/caspar-doc.doc-base.caspar-typesetting, debian/changelog:
[no log message]
2006-05-19 joostvb
* caspar/TODO, caspar/doc/caspar.azm: add caspar alternatives to
caspar(7)
2006-05-19 joostvb
* caspar/TODO: more to do: alternatives
2006-05-19 joostvb
* caspar/doc/caspar.azm: extra example. tnx to Jurrit for helping me
find out such an example was lacking
2006-04-25 joostvb
* caspar/TODO: more to do
2006-03-19 joostvb
* caspar/NEWS: [no log message]
2006-03-19 joostvb
* caspar/NEWS: [no log message]
2006-03-19 joostvb
* caspar/Makefile.am, caspar/NEWS, caspar/TODO,
caspar/configure.ac, caspar/doc/Makefile.am,
caspar/doc/csp_sucp.azm, caspar/script/Makefile.am: document
csp_sucp in manpage. Install csp_sucp and csp_sucp.1
2006-03-18 joostvb
* caspar/TODO: we need more testing
2006-03-18 joostvb
* caspar/script/csp_sucp: fail gracefully in case no args are passed
2006-02-16 joostvb
* caspar/doc/caspar.azm, caspar/mk/caspar.mk: fix typo which leads
to "caspar/mk/caspar.mk:27: *** invalid syntax in conditional.
Stop."
2006-02-16 joostvb
* caspar/NEWS: snapshot release 20060216
2006-02-16 joostvb
* caspar/TODO, caspar/doc/caspar.azm, caspar/script/csp_sucp: add
example for csp_sucp usage to manpage, update list of supported
variables
2006-02-16 joostvb
* caspar/NEWS, caspar/TODO, caspar/mk/caspar.mk: work on
csp_PUSH-plugin architecture: a make function for each plugin
2006-02-15 joostvb
* caspar/TODO, caspar/mk/caspar.mk: investigating make functions
2006-02-15 joostvb
* caspar/NEWS, caspar/TODO, caspar/script/csp_sucp: [no log message]
2006-02-15 joostvb
* caspar/TODO, caspar/doc/caspar.azm, caspar/mk/caspar.mk,
caspar/script/csp_sucp: csp_sucp honor CSP_SUCP_USER env var;
caspar.mk honors csp_sucp_USER make var
2006-02-15 joostvb
* debian/changelog, debian/control, debian/copyright: [no log
message]
2006-02-15 joostvb
* debian/changelog, debian/control: o my, ftbfs!
2006-02-08 joostvb
* caspar/TODO, caspar/script/csp_sucp: csp_sucp groks an optional
fourth argument
2006-02-07 joostvb
* caspar/TODO: we will drop support for csp_CPDIRS
2006-02-07 joostvb
* caspar/mk/caspar.mk: enabled csp_PUSH rule, listed some variables
as to be phased out (and kept for backward compatibility)
2006-02-07 joostvb
* caspar/doc/caspar.azm: updated examples to new UI
2006-01-29 joostvb
* caspar/Makefile.am, caspar/NEWS: [no log message]
2006-01-29 joostvb
* caspar/doc/include.zmm: adapted for zoem >= 05-328
2006-01-29 joostvb
* caspar/Makefile.am, caspar/configure.ac, caspar/mk/caspar.mk:
updated copyright statement
2006-01-29 joostvb
* caspar/TODO, caspar/bootstrap: use the autoreconf wrapper
2006-01-28 joostvb
* caspar/TODO: [no log message]
2006-01-28 joostvb
* caspar/mk/caspar.mk: postpone csp_PUSH and csp_DIR implementation:
use explicit csp_sucp_UHOST(S) and csp_sucp_DIR
2006-01-28 joostvb
* caspar/mk/caspar.mk: renamed csp_PUSHUHS to csp_sucp_UHOSTS,
defaulting to csp_UHOSTS
2006-01-28 joostvb
* caspar/script/csp_sucp, caspar/script/sucp: renamed sucp to
csp_sucp
2006-01-28 joostvb
* caspar/TODO: add plan on new UI design: enable plugins
2005-12-08 joostvb
* debian/changelog, debian/control: [no log message]
2005-10-26 joostvb
* caspar/TODO: more to do
2005-10-01 joostvb
* caspar/TODO, caspar/script/sucp: -T hack, thanks Wessel Dankers
2005-09-21 joostvb
* caspar/doc/caspar.azm: adding notes on PUSH* variables
2005-09-20 joostvb
* caspar/TODO: list what needs to be done to finish the sucp script
2005-09-20 joostvb
* caspar/script/sucp: sucp: one way to use the new csp_PUSH stuff
2005-09-20 joostvb
* caspar/mk/caspar.mk: bleeding edge setup of way not to use scp,
but a ssh/sudo combination. new variables: csp_PUSHDIR, csp_PUSH,
csp_PUSHUHS. new script: sucp
2005-09-20 joostvb
* caspar/TODO: documented one way to implement sudo-support
2005-08-01 joostvb
* caspar/TODO: [no log message]
2005-08-01 joostvb
* caspar/TODO: [no log message]
2005-07-24 joostvb
* caspar/sgml/print.dsl: typeset more sanely: typewriter
2005-06-24 joostvb
* caspar/TODO: feature request added
2005-06-23 joostvb
* caspar/mk/caspar.mk: install and load now are .PHONY targets.
Thanks Guus Sliepen
2005-04-25 joostvb
* solaris/doc/log: [no log message]
2005-04-24 joostvb
* solaris/pkg/README.Solaris: [no log message]
2005-04-24 joostvb
* solaris/pkg/Makefile.m4, solaris/pkg/pkginfo.in: use
csbs--mainline--0.1--patch-26 CSBS_ARCH hook
2005-04-24 joostvb
* solaris/doc/log: [no log message]
2005-04-24 joostvb
* solaris/doc/log: current state of csbs
2005-04-24 joostvb
* solaris/pkg/Makefile.m4, solaris/pkg/README.Solaris: new upstream
2005-04-24 joostvb
* debian/changelog, debian/copyright, debian/postinst,
debian/postrm, debian/preinst, debian/prerm: remove crap
2005-04-24 joostvb
* debian/TODO, debian/caspar.README.Debian, debian/changelog,
debian/rules: more hints for lost debian victims
2005-04-24 joostvb
* caspar/Makefile.am: local publish and sign targets added, for
release management
2005-04-24 joostvb
* caspar/NEWS: release 20050424
2005-04-24 joostvb
* caspar/TODO, caspar/doc/caspar.azm: more notes about alternatives
to caspar(7)
2005-04-20 joostvb
* caspar/NEWS: [no log message]
2005-04-20 joostvb
* caspar/doc/caspar.azm: document new defaults
2005-04-20 joostvb
* caspar/doc/caspar.azm, caspar/mk/caspar.mk: just the
csp_EXTRAFILES variable is enough for this functionality. got rid
of csp_EXTRAFILES_SKIP and csp_EXTRAFILES_ADD
2005-04-19 joostvb
* caspar/THANKS: thanks Guus
2005-04-19 joostvb
* caspar/doc/caspar.azm: add example of csp_EXTRAFILES usage
2005-04-19 joostvb
* caspar/doc/caspar.azm: apply patch by Guus Sliepen documenting
csp_EXTRAFILES*, Message-ID:
2005-04-19 joostvb
* caspar/mk/caspar.mk: fix typo in guus patch
2005-04-19 joostvb
* caspar/mk/caspar.mk: applied patch by Guus Sliepen, Message-ID: :
add suppport for csp_EXTRAFILES, csp_EXTRAFILES_SKIP,
csp_EXTRAFILES_ADD
2005-03-31 joostvb
* debian/TODO: tnx Laurent
2005-03-09 joostvb
* solaris/pkg/README.Solaris: [no log message]
2005-03-09 joostvb
* solaris/pkg/Makefile.m4, solaris/pkg/README.Solaris,
solaris/pkg/bootstrap: [no log message]
2005-03-06 joostvb
* solaris/doc/log, solaris/pkg/Makefile.m4: [no log message]
2005-03-05 joostvb
* solaris/pkg/pkginfo.in: csbs now offers more expansions
2005-03-05 joostvb
* solaris/pkg/prototype: list of files in package. for now, let s
not autogenerate it
2005-03-04 joostvb
* solaris/doc/log, solaris/pkg/README.Solaris: [no log message]
2005-03-04 joostvb
* solaris/pkg/README.Solaris: [no log message]
2005-03-03 joostvb
* solaris/pkg/pkginfo.in: doe die maar
2005-03-03 joostvb
* solaris/doc/readme.txt: [no log message]
2005-03-03 joostvb
* solaris/pkg/pkginfo.in: should use more stuff as defined in
Makefile.m4, actually
2005-03-03 joostvb
* solaris/pkg/Makefile.m4: [no log message]
2005-03-03 joostvb
* solaris/doc/readme.txt, solaris/pkg/Makefile: use csbs
2005-03-02 joostvb
* solaris/doc/readme.txt, solaris/pkg/Makefile: first shot at
solaris package infrastructure
2005-03-02 joostvb
* debian/TODO: done
2005-03-02 joostvb
* debian/changelog, debian/rules: new upstream
2005-03-02 joostvb
* caspar/NEWS, caspar/TODO: release 20050302
2005-03-02 joostvb
* caspar/mk/caspar.mk: CVS typically is not a file: removed from
csp_TABOOFILES_DEFAULT
2005-03-02 joostvb
* caspar/doc/caspar.azm: fix escaping, manpage gets typesetted
completely again
2005-03-01 joostvb
* debian/TODO: [no log message]
2005-03-01 joostvb
* caspar/TODO: aargh. borken manpage
2005-03-01 joostvb
* caspar/mk/Makefile.am: [no log message]
2005-03-01 joostvb
* caspar/NEWS: release 20050301
2005-03-01 joostvb
* caspar/mk/Makefile.am: cosmetics
2005-03-01 joostvb
* caspar/.cvsignore: [no log message]
2005-03-01 joostvb
* caspar/NEWS, caspar/TODO: give some hints on how to upgrade
old-style Makefiles
2005-03-01 joostvb
* caspar/doc/caspar.azm: document install-recursive make target
2005-02-28 joostvb
* caspar/mk/caspar.mk: no longer supply backward compatibility with
caspar <= 20030825
2005-02-28 joostvb
* caspar/TODO, caspar/doc/caspar.azm: supply example for TABOOFILES
hack
2005-02-23 joostvb
* caspar/doc/caspar.azm, caspar/mk/caspar.mk: INCLUDE doesnt seem a
natural name. Use SKIP and ADD. Documented new variables
2005-02-23 joostvb
* caspar/mk/caspar.mk: new variabled
csp_TABOO{FILES,DIRS}_{INCLUDE,EXCLUDE}, to tweak
csp_TABOO{FILES,DIRS}. Thanks to Wessel Dankers
2005-02-23 joostvb
* caspar/TODO: perhaps csp_TABOODIRS could use more documentation
2005-02-16 joostvb
* caspar/TODO: you might not need caspar
2004-09-09 joostvb
* caspar/doc/caspar.azm: document new csp_TABOO{FILES,DIRS}
variables
2004-09-09 joostvb
* caspar/mk/docbook.mk: use "typeset" as default target: cooperate
nice with caspar.mk
2004-09-09 joostvb
* caspar/mk/caspar.mk, caspar/mk/pod.mk: new variables:
csp_TABOOFILES and csp_TABOODIRS
2004-09-09 joostvb
* caspar/mk/caspar.mk: never install pod2html item cache and
pod2html directory cache
2004-08-15 joostvb
* caspar/TODO: have submitted at GNU directory
2004-08-07 joostvb
* caspar/TODO: gnu directory hassle...
2004-08-07 joostvb
* caspar/TODO: [no log message]
2004-08-07 joostvb
* caspar/caspar.azm: remove old cruft
2004-07-21 joostvb
* debian/changelog, debian/control, debian/rules: [no log message]
2004-07-21 joostvb
* caspar/TODO, caspar/mk/Makefile.am: another shot at making the
symlink creation work for binary packagers
2004-07-21 joostvb
* caspar/NEWS: release 20040721
2004-07-21 joostvb
* caspar/TODO: more documentation needed
2004-07-21 joostvb
* caspar/README: announce upload to Debian archive
2004-07-21 joostvb
* caspar/.cvsignore: [no log message]
2004-07-21 joostvb
* caspar/bootstrap: be verbose about possible problems
2004-07-21 joostvb
* caspar/Makefile.am: the dist and distcheck targets no build both
tar.gz and tar.bz2
2004-07-21 joostvb
* caspar/configure.ac, caspar/mk/Makefile.am: use $(LN_S), not ln
-s: more portable. honor $(DESTDIR): automake >= 1.7 compliant
2004-07-21 joostvb
* caspar/bootstrap: added warning about pkg-config and aclocal 1.8
not cooperating
2004-07-11 joostvb
* caspar/AUTHORS, caspar/README, caspar/TODO: cleaning up TODO file
2004-07-03 joostvb
* caspar/TODO: [no log message]
2004-07-03 joostvb
* caspar/TODO: more ideas for improvements
2004-06-19 joostvb
* caspar/doc/caspar.azm: added note about yet another possible
alternative: sup
2004-05-31 joostvb
* debian/copyright, debian/postinst, debian/postrm, debian/preinst,
debian/prerm, debian/rules: [no log message]
2004-05-31 joostvb
* debian/caspar-doc.install, debian/changelog, debian/control,
debian/rules: [no log message]
2004-05-31 joostvb
* debian/control, debian/rules: [no log message]
2004-05-31 joostvb
* debian/caspar-doc.install: [no log message]
2004-05-31 joostvb
* debian/changelog, debian/control, debian/rules: splitting -doc off
2004-05-31 joostvb
* debian/caspar-doc.doc-base.caspar,
debian/caspar-doc.doc-base.caspar-typesetting, debian/changelog,
debian/control, debian/doc-base.caspar,
debian/doc-base.caspar-typesetting: splitting into caspar and
caspar-doc packages
2004-05-31 joostvb
* caspar/NEWS: release 20040531
2004-05-31 joostvb
* caspar/README: notes on cvs commit email messages for developers
2004-05-31 joostvb
* caspar/bootstrap: minor tweak in build system
2004-05-31 joostvb
* caspar/TODO, caspar/doc/caspar-typesetting.azm,
caspar/doc/caspar.azm: [no log message]
2004-05-31 joostvb
* caspar/doc/include.zmm: nice header in manpage, even with zoem >
03-265
2004-05-31 joostvb
* caspar/TODO: [no log message]
2004-05-31 joostvb
* caspar/NEWS: documented new variable names and ui change
2004-05-31 joostvb
* caspar/mk/caspar.mk: some more cleanup in var names
2004-05-31 joostvb
* caspar/doc/caspar.azm: document new variable names, with csp_
prefix
2004-05-30 joostvb
* caspar/mk/caspar.mk: renamed variables (the user interface): now
have csp_ prefix
2004-03-11 joostvb
* caspar/NEWS: [no log message]
2004-03-11 joostvb
* caspar/TODO: more ideas
2004-03-11 joostvb
* caspar/mk/docbook.mk: added comment about using GNU Make built-in
implicit rules
2004-03-11 joostvb
* caspar/mk/caspar.mk: added experimental install-recursive target
2004-03-11 joostvb
* caspar/sgml/print.dsl: added comments on changing default
font-size
2004-02-26 joostvb
* caspar/TODO: more to do
2004-01-23 joostvb
* rpm/caspar.spec: [no log message]
2004-01-05 joostvb
* rpm/caspar.spec: first shot at building RHL 8.0 rpm
2003-12-17 joostvb
* caspar/bootstrap: [no log message]
2003-12-17 joostvb
* caspar/NEWS, caspar/README: notes on CVS move to Alioth
2003-12-15 joostvb
* caspar/doc/caspar.azm, caspar/mk/caspar.mk, debian/copyright:
fixed copyright
2003-11-12 joostvb
* caspar/doc/caspar.azm: added link to cvs-conf project page
2003-11-12 joostvb
* caspar/doc/caspar.azm: DIR and SDIR should have trailing /, tnx
Fruit
2003-11-04 joostvb
* caspar/mk/pod.mk: dont remove *.txt and friends which are not
generated from pod
2003-08-25 joostvb
* debian/changelog: [no log message]
2003-08-25 joostvb
* caspar/NEWS: [no log message]
2003-08-22 joostvb
* caspar/doc/caspar.azm: notes on new variables added
2003-08-22 joostvb
* caspar/mk/caspar.mk: caspar.mk now honors CPFLAGS and SCPFLAGS:
extra arguments for cp and scp
2003-08-09 joostvb
* debian/changelog, debian/doc-base.caspar,
debian/doc-base.caspar-typesetting, debian/rules: [no log message]
2003-08-09 joostvb
* caspar/Makefile.am, caspar/doc/Makefile.am: fixed bugs in automake
1.7 build hooks
2003-08-09 joostvb
* caspar/doc/caspar-typesetting.azm, caspar/doc/caspar.azm: use zoem
linking of manpages
2003-08-09 joostvb
* caspar/ChangeLog: now autogenerated
2003-08-09 joostvb
* caspar/.cvsignore, caspar/Makefile.am, caspar/NEWS,
caspar/doc/.cvsignore: [no log message]
2003-08-09 joostvb
* caspar/doc/caspar-typesetting.azm: manpage, from comments in
docbook.mk and pod.mk
2003-08-09 joostvb
* caspar/doc/include.zmm: zoem include macros
2003-08-09 joostvb
* caspar/doc/ChangeLog.2002: splitted off new autogenerated
ChangeLog
2003-08-09 joostvb
* caspar/doc/Makefile.am, caspar/doc/caspar.azm,
caspar/mk/docbook.mk, caspar/mk/pod.mk: moved comments in source
files to proper manpage: caspar-typesetting(7) added
2003-08-09 joostvb
* caspar/THANKS, caspar/configure.ac, caspar/setversion: tnx stijn
for zoem build enviroment hooks
2003-08-09 joostvb
* caspar/.cvsignore, caspar/Makefile.am, caspar/NEWS,
caspar/bootstrap, caspar/doc/Makefile.am: ChangeLog now is
automagically generated from CVS. NEWS actually will have content
2003-08-09 joostvb
* caspar/doc/Makefile.am: distribute plain ascii too
2003-08-09 joostvb
* caspar/README: lots of info moved to doc/caspar.azm
2003-08-09 joostvb
* caspar/doc/.cvsignore, caspar/doc/Makefile.am,
caspar/doc/caspar.azm: zoemized caspar README file
2003-08-09 joostvb
* caspar/.cvsignore, caspar/README, caspar/caspar.azm: converting
README to zoem format
2003-08-06 joostvb
* caspar/THANKS: [no log message]
2003-08-06 joostvb
* caspar/mk/caspar.mk: applied patch from Anton Sluijtman to exclude
emacs backup files
2003-08-02 joostvb
* caspar/ChangeLog, caspar/mk/Makefile.am, caspar/sgml/Makefile.am:
aargh
2003-08-02 joostvb
* debian/changelog: [no log message]
2003-08-02 joostvb
* caspar/ChangeLog, caspar/Makefile.am, caspar/bootstrap,
caspar/configure.ac, caspar/configure.in, caspar/mk/caspar.mk,
caspar/setversion: new build system
2003-07-24 joostvb
* caspar/TODO: done, not released yet
2003-07-24 joostvb
* caspar/ChangeLog, caspar/mk/docbook.mk: [no log message]
2003-07-24 joostvb
* caspar/mk/docbook.mk: use pdflatex for generating pdf from LaTeX,
make sure tocs gets created from LaTeX source
2003-07-24 joostvb
* caspar/TODO: generating pdf from LaTeX is broken
2003-07-23 joostvb
* debian/changelog: [no log message]
2003-07-23 joostvb
* debian/changelog, debian/control, debian/copyright, debian/dirs,
debian/docs, debian/postinst, debian/postrm, debian/preinst,
debian/prerm, debian/rules: moved from cvs/gelfand/debian/caspar
2003-07-18 joostvb
* caspar/ChangeLog: [no log message]
2003-07-18 joostvb
* caspar/ChangeLog: [no log message]
2003-07-18 joostvb
* caspar/mk/docbook.mk: run pdfjadetex 3 times: fixes toc. rm -f
intermediate files: no sure wether they will get created. added
license referal
2003-07-16 joostvb
* caspar/mk/docbook.mk: use pdfjadetex for generating pdf: fonts
look better
2003-07-14 joostvb
* caspar/TODO: more stuff todo added
2003-05-17 joostvb
* caspar/ChangeLog, caspar/README: [no log message]
2003-04-27 joostvb
* caspar/ChangeLog: [no log message]
2003-04-27 joostvb
* caspar/TODO, caspar/sgml/html.dsl: did some toc investigations
2003-03-31 joostvb
* caspar/.cvsignore, caspar/ChangeLog, caspar/mk/Makefile.am: [no
log message]
2003-03-31 joostvb
* caspar/mk/docbook.mk: sane default target for docbook stuff
2003-02-12 joostvb
* caspar/ChangeLog, caspar/README: [no log message]
2003-02-12 joostvb
* caspar/mk/caspar.mk: added SUHS hack
2003-02-05 joostvb
* caspar/ChangeLog: [no log message]
2003-02-05 joostvb
* caspar/mk/caspar.mk: ommitting SDIR results in scp to get skipped
2003-02-05 joostvb
* caspar/.cvsignore, caspar/bootstrap, caspar/mk/.cvsignore,
caspar/sgml/.cvsignore: [no log message]
2003-02-03 joostvb
* caspar/ChangeLog: [no log message]
2003-02-03 joostvb
* caspar/ChangeLog, caspar/README, caspar/THANKS, caspar/TODO,
caspar/mk/Makefile.am, caspar/mk/pod.mk: [no log message]
2002-11-22 joostvb
* caspar/ChangeLog, caspar/README: rsync note
2002-09-11 joostvb
* caspar/ChangeLog, caspar/README: [no log message]
2002-05-04 joostvb
* caspar/ChangeLog, caspar/README: [no log message]
2002-04-02 joostvb
* caspar/ChangeLog, caspar/TODO: [no log message]
2002-03-31 joostvb
* caspar/ChangeLog: [no log message]
2002-03-31 joostvb
* caspar/ChangeLog, caspar/README, caspar/THANKS, caspar/TODO,
caspar/mk/docbook.mk: [no log message]
2002-03-31 joostvb
* caspar/TODO: [no log message]
2002-03-24 joostvb
* caspar/TODO: added reference to cfenginge, tnx flacoste
2002-03-13 joostvb
* caspar/ChangeLog, caspar/Makefile.am, caspar/TODO,
caspar/configure.in, caspar/mk/docbook.mk, caspar/sgml/Makefile.am,
caspar/sgml/html.dsl, caspar/sgml/print.dsl: [no log message]
2002-03-01 joostvb
* caspar/ChangeLog, caspar/README, caspar/TODO.local,
caspar/bootstrap, caspar/mk/Makefile.am, caspar/mk/caspar.mk,
caspar/mk/docbook.mk: [no log message]
2002-03-01 joostvb
* caspar/ChangeLog: [no log message]
2002-02-27 joostvb
* caspar/ChangeLog, caspar/README, caspar/TODO, caspar/TODO.local,
caspar/mk/Makefile.am, caspar/mk/caspar.mk, caspar/mk/install.mk,
caspar/setversion: [no log message]
2002-02-27 joostvb
* caspar/TODO: [no log message]
2002-02-26 joostvb
* caspar/ChangeLog, caspar/README, caspar/TODO: [no log message]
2002-02-26 joostvb
* caspar/ChangeLog, caspar/TODO, caspar/mk/Makefile.am,
caspar/mk/install.mk: [no log message]
2002-02-26 joostvb
* caspar/TODO: [no log message]
2002-02-26 joostvb
* caspar/.cvsignore, caspar/AUTHORS, caspar/BUGS, caspar/ChangeLog,
caspar/Makefile.am: [no log message]
2002-02-26 joostvb
* caspar/BUGS, caspar/Makefile.am: [no log message]
2002-02-26 joostvb
* caspar/Makefile.am, caspar/NEWS, caspar/README, caspar/THANKS,
caspar/TODO, caspar/bootstrap, caspar/configure.in,
caspar/mk/Makefile.am, caspar/mk/install.mk, caspar/setversion: [no
log message]
2002-02-26 joostvb
* *** empty log message ***
caspar-20170830/COPYING 0000644 0001751 0001751 00000104513 12753041535 011220 0000000 0000000 GNU GENERAL PUBLIC LICENSE
Version 3, 29 June 2007
Copyright (C) 2007 Free Software Foundation, Inc.
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
Preamble
The GNU General Public License is a free, copyleft license for
software and other kinds of works.
The licenses for most software and other practical works are designed
to take away your freedom to share and change the works. By contrast,
the GNU General Public License is intended to guarantee your freedom to
share and change all versions of a program--to make sure it remains free
software for all its users. We, the Free Software Foundation, use the
GNU General Public License for most of our software; it applies also to
any other work released this way by its authors. You can apply it to
your programs, too.
When we speak of free software, we are referring to freedom, not
price. Our General Public Licenses are designed to make sure that you
have the freedom to distribute copies of free software (and charge for
them if you wish), that you receive source code or can get it if you
want it, that you can change the software or use pieces of it in new
free programs, and that you know you can do these things.
To protect your rights, we need to prevent others from denying you
these rights or asking you to surrender the rights. Therefore, you have
certain responsibilities if you distribute copies of the software, or if
you modify it: responsibilities to respect the freedom of others.
For example, if you distribute copies of such a program, whether
gratis or for a fee, you must pass on to the recipients the same
freedoms that you received. You must make sure that they, too, receive
or can get the source code. And you must show them these terms so they
know their rights.
Developers that use the GNU GPL protect your rights with two steps:
(1) assert copyright on the software, and (2) offer you this License
giving you legal permission to copy, distribute and/or modify it.
For the developers' and authors' protection, the GPL clearly explains
that there is no warranty for this free software. For both users' and
authors' sake, the GPL requires that modified versions be marked as
changed, so that their problems will not be attributed erroneously to
authors of previous versions.
Some devices are designed to deny users access to install or run
modified versions of the software inside them, although the manufacturer
can do so. This is fundamentally incompatible with the aim of
protecting users' freedom to change the software. The systematic
pattern of such abuse occurs in the area of products for individuals to
use, which is precisely where it is most unacceptable. Therefore, we
have designed this version of the GPL to prohibit the practice for those
products. If such problems arise substantially in other domains, we
stand ready to extend this provision to those domains in future versions
of the GPL, as needed to protect the freedom of users.
Finally, every program is threatened constantly by software patents.
States should not allow patents to restrict development and use of
software on general-purpose computers, but in those that do, we wish to
avoid the special danger that patents applied to a free program could
make it effectively proprietary. To prevent this, the GPL assures that
patents cannot be used to render the program non-free.
The precise terms and conditions for copying, distribution and
modification follow.
TERMS AND CONDITIONS
0. Definitions.
"This License" refers to version 3 of the GNU General Public License.
"Copyright" also means copyright-like laws that apply to other kinds of
works, such as semiconductor masks.
"The Program" refers to any copyrightable work licensed under this
License. Each licensee is addressed as "you". "Licensees" and
"recipients" may be individuals or organizations.
To "modify" a work means to copy from or adapt all or part of the work
in a fashion requiring copyright permission, other than the making of an
exact copy. The resulting work is called a "modified version" of the
earlier work or a work "based on" the earlier work.
A "covered work" means either the unmodified Program or a work based
on the Program.
To "propagate" a work means to do anything with it that, without
permission, would make you directly or secondarily liable for
infringement under applicable copyright law, except executing it on a
computer or modifying a private copy. Propagation includes copying,
distribution (with or without modification), making available to the
public, and in some countries other activities as well.
To "convey" a work means any kind of propagation that enables other
parties to make or receive copies. Mere interaction with a user through
a computer network, with no transfer of a copy, is not conveying.
An interactive user interface displays "Appropriate Legal Notices"
to the extent that it includes a convenient and prominently visible
feature that (1) displays an appropriate copyright notice, and (2)
tells the user that there is no warranty for the work (except to the
extent that warranties are provided), that licensees may convey the
work under this License, and how to view a copy of this License. If
the interface presents a list of user commands or options, such as a
menu, a prominent item in the list meets this criterion.
1. Source Code.
The "source code" for a work means the preferred form of the work
for making modifications to it. "Object code" means any non-source
form of a work.
A "Standard Interface" means an interface that either is an official
standard defined by a recognized standards body, or, in the case of
interfaces specified for a particular programming language, one that
is widely used among developers working in that language.
The "System Libraries" of an executable work include anything, other
than the work as a whole, that (a) is included in the normal form of
packaging a Major Component, but which is not part of that Major
Component, and (b) serves only to enable use of the work with that
Major Component, or to implement a Standard Interface for which an
implementation is available to the public in source code form. A
"Major Component", in this context, means a major essential component
(kernel, window system, and so on) of the specific operating system
(if any) on which the executable work runs, or a compiler used to
produce the work, or an object code interpreter used to run it.
The "Corresponding Source" for a work in object code form means all
the source code needed to generate, install, and (for an executable
work) run the object code and to modify the work, including scripts to
control those activities. However, it does not include the work's
System Libraries, or general-purpose tools or generally available free
programs which are used unmodified in performing those activities but
which are not part of the work. For example, Corresponding Source
includes interface definition files associated with source files for
the work, and the source code for shared libraries and dynamically
linked subprograms that the work is specifically designed to require,
such as by intimate data communication or control flow between those
subprograms and other parts of the work.
The Corresponding Source need not include anything that users
can regenerate automatically from other parts of the Corresponding
Source.
The Corresponding Source for a work in source code form is that
same work.
2. Basic Permissions.
All rights granted under this License are granted for the term of
copyright on the Program, and are irrevocable provided the stated
conditions are met. This License explicitly affirms your unlimited
permission to run the unmodified Program. The output from running a
covered work is covered by this License only if the output, given its
content, constitutes a covered work. This License acknowledges your
rights of fair use or other equivalent, as provided by copyright law.
You may make, run and propagate covered works that you do not
convey, without conditions so long as your license otherwise remains
in force. You may convey covered works to others for the sole purpose
of having them make modifications exclusively for you, or provide you
with facilities for running those works, provided that you comply with
the terms of this License in conveying all material for which you do
not control copyright. Those thus making or running the covered works
for you must do so exclusively on your behalf, under your direction
and control, on terms that prohibit them from making any copies of
your copyrighted material outside their relationship with you.
Conveying under any other circumstances is permitted solely under
the conditions stated below. Sublicensing is not allowed; section 10
makes it unnecessary.
3. Protecting Users' Legal Rights From Anti-Circumvention Law.
No covered work shall be deemed part of an effective technological
measure under any applicable law fulfilling obligations under article
11 of the WIPO copyright treaty adopted on 20 December 1996, or
similar laws prohibiting or restricting circumvention of such
measures.
When you convey a covered work, you waive any legal power to forbid
circumvention of technological measures to the extent such circumvention
is effected by exercising rights under this License with respect to
the covered work, and you disclaim any intention to limit operation or
modification of the work as a means of enforcing, against the work's
users, your or third parties' legal rights to forbid circumvention of
technological measures.
4. Conveying Verbatim Copies.
You may convey verbatim copies of the Program's source code as you
receive it, in any medium, provided that you conspicuously and
appropriately publish on each copy an appropriate copyright notice;
keep intact all notices stating that this License and any
non-permissive terms added in accord with section 7 apply to the code;
keep intact all notices of the absence of any warranty; and give all
recipients a copy of this License along with the Program.
You may charge any price or no price for each copy that you convey,
and you may offer support or warranty protection for a fee.
5. Conveying Modified Source Versions.
You may convey a work based on the Program, or the modifications to
produce it from the Program, in the form of source code under the
terms of section 4, provided that you also meet all of these conditions:
a) The work must carry prominent notices stating that you modified
it, and giving a relevant date.
b) The work must carry prominent notices stating that it is
released under this License and any conditions added under section
7. This requirement modifies the requirement in section 4 to
"keep intact all notices".
c) You must license the entire work, as a whole, under this
License to anyone who comes into possession of a copy. This
License will therefore apply, along with any applicable section 7
additional terms, to the whole of the work, and all its parts,
regardless of how they are packaged. This License gives no
permission to license the work in any other way, but it does not
invalidate such permission if you have separately received it.
d) If the work has interactive user interfaces, each must display
Appropriate Legal Notices; however, if the Program has interactive
interfaces that do not display Appropriate Legal Notices, your
work need not make them do so.
A compilation of a covered work with other separate and independent
works, which are not by their nature extensions of the covered work,
and which are not combined with it such as to form a larger program,
in or on a volume of a storage or distribution medium, is called an
"aggregate" if the compilation and its resulting copyright are not
used to limit the access or legal rights of the compilation's users
beyond what the individual works permit. Inclusion of a covered work
in an aggregate does not cause this License to apply to the other
parts of the aggregate.
6. Conveying Non-Source Forms.
You may convey a covered work in object code form under the terms
of sections 4 and 5, provided that you also convey the
machine-readable Corresponding Source under the terms of this License,
in one of these ways:
a) Convey the object code in, or embodied in, a physical product
(including a physical distribution medium), accompanied by the
Corresponding Source fixed on a durable physical medium
customarily used for software interchange.
b) Convey the object code in, or embodied in, a physical product
(including a physical distribution medium), accompanied by a
written offer, valid for at least three years and valid for as
long as you offer spare parts or customer support for that product
model, to give anyone who possesses the object code either (1) a
copy of the Corresponding Source for all the software in the
product that is covered by this License, on a durable physical
medium customarily used for software interchange, for a price no
more than your reasonable cost of physically performing this
conveying of source, or (2) access to copy the
Corresponding Source from a network server at no charge.
c) Convey individual copies of the object code with a copy of the
written offer to provide the Corresponding Source. This
alternative is allowed only occasionally and noncommercially, and
only if you received the object code with such an offer, in accord
with subsection 6b.
d) Convey the object code by offering access from a designated
place (gratis or for a charge), and offer equivalent access to the
Corresponding Source in the same way through the same place at no
further charge. You need not require recipients to copy the
Corresponding Source along with the object code. If the place to
copy the object code is a network server, the Corresponding Source
may be on a different server (operated by you or a third party)
that supports equivalent copying facilities, provided you maintain
clear directions next to the object code saying where to find the
Corresponding Source. Regardless of what server hosts the
Corresponding Source, you remain obligated to ensure that it is
available for as long as needed to satisfy these requirements.
e) Convey the object code using peer-to-peer transmission, provided
you inform other peers where the object code and Corresponding
Source of the work are being offered to the general public at no
charge under subsection 6d.
A separable portion of the object code, whose source code is excluded
from the Corresponding Source as a System Library, need not be
included in conveying the object code work.
A "User Product" is either (1) a "consumer product", which means any
tangible personal property which is normally used for personal, family,
or household purposes, or (2) anything designed or sold for incorporation
into a dwelling. In determining whether a product is a consumer product,
doubtful cases shall be resolved in favor of coverage. For a particular
product received by a particular user, "normally used" refers to a
typical or common use of that class of product, regardless of the status
of the particular user or of the way in which the particular user
actually uses, or expects or is expected to use, the product. A product
is a consumer product regardless of whether the product has substantial
commercial, industrial or non-consumer uses, unless such uses represent
the only significant mode of use of the product.
"Installation Information" for a User Product means any methods,
procedures, authorization keys, or other information required to install
and execute modified versions of a covered work in that User Product from
a modified version of its Corresponding Source. The information must
suffice to ensure that the continued functioning of the modified object
code is in no case prevented or interfered with solely because
modification has been made.
If you convey an object code work under this section in, or with, or
specifically for use in, a User Product, and the conveying occurs as
part of a transaction in which the right of possession and use of the
User Product is transferred to the recipient in perpetuity or for a
fixed term (regardless of how the transaction is characterized), the
Corresponding Source conveyed under this section must be accompanied
by the Installation Information. But this requirement does not apply
if neither you nor any third party retains the ability to install
modified object code on the User Product (for example, the work has
been installed in ROM).
The requirement to provide Installation Information does not include a
requirement to continue to provide support service, warranty, or updates
for a work that has been modified or installed by the recipient, or for
the User Product in which it has been modified or installed. Access to a
network may be denied when the modification itself materially and
adversely affects the operation of the network or violates the rules and
protocols for communication across the network.
Corresponding Source conveyed, and Installation Information provided,
in accord with this section must be in a format that is publicly
documented (and with an implementation available to the public in
source code form), and must require no special password or key for
unpacking, reading or copying.
7. Additional Terms.
"Additional permissions" are terms that supplement the terms of this
License by making exceptions from one or more of its conditions.
Additional permissions that are applicable to the entire Program shall
be treated as though they were included in this License, to the extent
that they are valid under applicable law. If additional permissions
apply only to part of the Program, that part may be used separately
under those permissions, but the entire Program remains governed by
this License without regard to the additional permissions.
When you convey a copy of a covered work, you may at your option
remove any additional permissions from that copy, or from any part of
it. (Additional permissions may be written to require their own
removal in certain cases when you modify the work.) You may place
additional permissions on material, added by you to a covered work,
for which you have or can give appropriate copyright permission.
Notwithstanding any other provision of this License, for material you
add to a covered work, you may (if authorized by the copyright holders of
that material) supplement the terms of this License with terms:
a) Disclaiming warranty or limiting liability differently from the
terms of sections 15 and 16 of this License; or
b) Requiring preservation of specified reasonable legal notices or
author attributions in that material or in the Appropriate Legal
Notices displayed by works containing it; or
c) Prohibiting misrepresentation of the origin of that material, or
requiring that modified versions of such material be marked in
reasonable ways as different from the original version; or
d) Limiting the use for publicity purposes of names of licensors or
authors of the material; or
e) Declining to grant rights under trademark law for use of some
trade names, trademarks, or service marks; or
f) Requiring indemnification of licensors and authors of that
material by anyone who conveys the material (or modified versions of
it) with contractual assumptions of liability to the recipient, for
any liability that these contractual assumptions directly impose on
those licensors and authors.
All other non-permissive additional terms are considered "further
restrictions" within the meaning of section 10. If the Program as you
received it, or any part of it, contains a notice stating that it is
governed by this License along with a term that is a further
restriction, you may remove that term. If a license document contains
a further restriction but permits relicensing or conveying under this
License, you may add to a covered work material governed by the terms
of that license document, provided that the further restriction does
not survive such relicensing or conveying.
If you add terms to a covered work in accord with this section, you
must place, in the relevant source files, a statement of the
additional terms that apply to those files, or a notice indicating
where to find the applicable terms.
Additional terms, permissive or non-permissive, may be stated in the
form of a separately written license, or stated as exceptions;
the above requirements apply either way.
8. Termination.
You may not propagate or modify a covered work except as expressly
provided under this License. Any attempt otherwise to propagate or
modify it is void, and will automatically terminate your rights under
this License (including any patent licenses granted under the third
paragraph of section 11).
However, if you cease all violation of this License, then your
license from a particular copyright holder is reinstated (a)
provisionally, unless and until the copyright holder explicitly and
finally terminates your license, and (b) permanently, if the copyright
holder fails to notify you of the violation by some reasonable means
prior to 60 days after the cessation.
Moreover, your license from a particular copyright holder is
reinstated permanently if the copyright holder notifies you of the
violation by some reasonable means, this is the first time you have
received notice of violation of this License (for any work) from that
copyright holder, and you cure the violation prior to 30 days after
your receipt of the notice.
Termination of your rights under this section does not terminate the
licenses of parties who have received copies or rights from you under
this License. If your rights have been terminated and not permanently
reinstated, you do not qualify to receive new licenses for the same
material under section 10.
9. Acceptance Not Required for Having Copies.
You are not required to accept this License in order to receive or
run a copy of the Program. Ancillary propagation of a covered work
occurring solely as a consequence of using peer-to-peer transmission
to receive a copy likewise does not require acceptance. However,
nothing other than this License grants you permission to propagate or
modify any covered work. These actions infringe copyright if you do
not accept this License. Therefore, by modifying or propagating a
covered work, you indicate your acceptance of this License to do so.
10. Automatic Licensing of Downstream Recipients.
Each time you convey a covered work, the recipient automatically
receives a license from the original licensors, to run, modify and
propagate that work, subject to this License. You are not responsible
for enforcing compliance by third parties with this License.
An "entity transaction" is a transaction transferring control of an
organization, or substantially all assets of one, or subdividing an
organization, or merging organizations. If propagation of a covered
work results from an entity transaction, each party to that
transaction who receives a copy of the work also receives whatever
licenses to the work the party's predecessor in interest had or could
give under the previous paragraph, plus a right to possession of the
Corresponding Source of the work from the predecessor in interest, if
the predecessor has it or can get it with reasonable efforts.
You may not impose any further restrictions on the exercise of the
rights granted or affirmed under this License. For example, you may
not impose a license fee, royalty, or other charge for exercise of
rights granted under this License, and you may not initiate litigation
(including a cross-claim or counterclaim in a lawsuit) alleging that
any patent claim is infringed by making, using, selling, offering for
sale, or importing the Program or any portion of it.
11. Patents.
A "contributor" is a copyright holder who authorizes use under this
License of the Program or a work on which the Program is based. The
work thus licensed is called the contributor's "contributor version".
A contributor's "essential patent claims" are all patent claims
owned or controlled by the contributor, whether already acquired or
hereafter acquired, that would be infringed by some manner, permitted
by this License, of making, using, or selling its contributor version,
but do not include claims that would be infringed only as a
consequence of further modification of the contributor version. For
purposes of this definition, "control" includes the right to grant
patent sublicenses in a manner consistent with the requirements of
this License.
Each contributor grants you a non-exclusive, worldwide, royalty-free
patent license under the contributor's essential patent claims, to
make, use, sell, offer for sale, import and otherwise run, modify and
propagate the contents of its contributor version.
In the following three paragraphs, a "patent license" is any express
agreement or commitment, however denominated, not to enforce a patent
(such as an express permission to practice a patent or covenant not to
sue for patent infringement). To "grant" such a patent license to a
party means to make such an agreement or commitment not to enforce a
patent against the party.
If you convey a covered work, knowingly relying on a patent license,
and the Corresponding Source of the work is not available for anyone
to copy, free of charge and under the terms of this License, through a
publicly available network server or other readily accessible means,
then you must either (1) cause the Corresponding Source to be so
available, or (2) arrange to deprive yourself of the benefit of the
patent license for this particular work, or (3) arrange, in a manner
consistent with the requirements of this License, to extend the patent
license to downstream recipients. "Knowingly relying" means you have
actual knowledge that, but for the patent license, your conveying the
covered work in a country, or your recipient's use of the covered work
in a country, would infringe one or more identifiable patents in that
country that you have reason to believe are valid.
If, pursuant to or in connection with a single transaction or
arrangement, you convey, or propagate by procuring conveyance of, a
covered work, and grant a patent license to some of the parties
receiving the covered work authorizing them to use, propagate, modify
or convey a specific copy of the covered work, then the patent license
you grant is automatically extended to all recipients of the covered
work and works based on it.
A patent license is "discriminatory" if it does not include within
the scope of its coverage, prohibits the exercise of, or is
conditioned on the non-exercise of one or more of the rights that are
specifically granted under this License. You may not convey a covered
work if you are a party to an arrangement with a third party that is
in the business of distributing software, under which you make payment
to the third party based on the extent of your activity of conveying
the work, and under which the third party grants, to any of the
parties who would receive the covered work from you, a discriminatory
patent license (a) in connection with copies of the covered work
conveyed by you (or copies made from those copies), or (b) primarily
for and in connection with specific products or compilations that
contain the covered work, unless you entered into that arrangement,
or that patent license was granted, prior to 28 March 2007.
Nothing in this License shall be construed as excluding or limiting
any implied license or other defenses to infringement that may
otherwise be available to you under applicable patent law.
12. No Surrender of Others' Freedom.
If conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License. If you cannot convey a
covered work so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you may
not convey it at all. For example, if you agree to terms that obligate you
to collect a royalty for further conveying from those to whom you convey
the Program, the only way you could satisfy both those terms and this
License would be to refrain entirely from conveying the Program.
13. Use with the GNU Affero General Public License.
Notwithstanding any other provision of this License, you have
permission to link or combine any covered work with a work licensed
under version 3 of the GNU Affero General Public License into a single
combined work, and to convey the resulting work. The terms of this
License will continue to apply to the part which is the covered work,
but the special requirements of the GNU Affero General Public License,
section 13, concerning interaction through a network will apply to the
combination as such.
14. Revised Versions of this License.
The Free Software Foundation may publish revised and/or new versions of
the GNU General Public License from time to time. Such new versions will
be similar in spirit to the present version, but may differ in detail to
address new problems or concerns.
Each version is given a distinguishing version number. If the
Program specifies that a certain numbered version of the GNU General
Public License "or any later version" applies to it, you have the
option of following the terms and conditions either of that numbered
version or of any later version published by the Free Software
Foundation. If the Program does not specify a version number of the
GNU General Public License, you may choose any version ever published
by the Free Software Foundation.
If the Program specifies that a proxy can decide which future
versions of the GNU General Public License can be used, that proxy's
public statement of acceptance of a version permanently authorizes you
to choose that version for the Program.
Later license versions may give you additional or different
permissions. However, no additional obligations are imposed on any
author or copyright holder as a result of your choosing to follow a
later version.
15. Disclaimer of Warranty.
THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
16. Limitation of Liability.
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
SUCH DAMAGES.
17. Interpretation of Sections 15 and 16.
If the disclaimer of warranty and limitation of liability provided
above cannot be given local legal effect according to their terms,
reviewing courts shall apply local law that most closely approximates
an absolute waiver of all civil liability in connection with the
Program, unless a warranty or assumption of liability accompanies a
copy of the Program in return for a fee.
END OF TERMS AND CONDITIONS
How to Apply These Terms to Your New Programs
If you develop a new program, and you want it to be of the greatest
possible use to the public, the best way to achieve this is to make it
free software which everyone can redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest
to attach them to the start of each source file to most effectively
state the exclusion of warranty; and each file should have at least
the "copyright" line and a pointer to where the full notice is found.
Copyright (C)
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 3 of the License, 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, see .
Also add information on how to contact you by electronic and paper mail.
If the program does terminal interaction, make it output a short
notice like this when it starts in an interactive mode:
Copyright (C)
This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.
The hypothetical commands `show w' and `show c' should show the appropriate
parts of the General Public License. Of course, your program's commands
might be different; for a GUI interface, you would use an "about box".
You should also get your employer (if you work as a programmer) or school,
if any, to sign a "copyright disclaimer" for the program, if necessary.
For more information on this, and how to apply and follow the GNU GPL, see
.
The GNU General Public License does not permit incorporating your program
into proprietary programs. If your program is a subroutine library, you
may consider it more useful to permit linking proprietary applications with
the library. If this is what you want to do, use the GNU Lesser General
Public License instead of this License. But first, please read
.
caspar-20170830/Makefile.in 0000644 0001751 0001751 00000064026 13151515275 012236 0000000 0000000 # Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
@SET_MAKE@
# This script is free software; you can distribute it and/or modify it
# under the terms of the GNU GPL. See the file COPYING.
VPATH = @srcdir@
am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
*) echo "am__make_running_with_option: internal error: invalid" \
"target option '$${target_option-}' specified" >&2; \
exit 1;; \
esac; \
has_opt=no; \
sane_makeflags=$$MAKEFLAGS; \
if $(am__is_gnu_make); then \
sane_makeflags=$$MFLAGS; \
else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
bs=\\; \
sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
| sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
esac; \
fi; \
skip_next=no; \
strip_trailopt () \
{ \
flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
}; \
for flg in $$sane_makeflags; do \
test $$skip_next = yes && { skip_next=no; continue; }; \
case $$flg in \
*=*|--*) continue;; \
-*I) strip_trailopt 'I'; skip_next=yes;; \
-*I?*) strip_trailopt 'I';; \
-*O) strip_trailopt 'O'; skip_next=yes;; \
-*O?*) strip_trailopt 'O';; \
-*l) strip_trailopt 'l'; skip_next=yes;; \
-*l?*) strip_trailopt 'l';; \
-[dEDm]) skip_next=yes;; \
-[JT]) skip_next=yes;; \
esac; \
case $$flg in \
*$$target_option*) has_opt=yes; break;; \
esac; \
done; \
test $$has_opt = yes
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
subdir = .
DIST_COMMON = INSTALL NEWS README AUTHORS ChangeLog COPYING \
$(srcdir)/Makefile.in $(srcdir)/Makefile.am \
$(top_srcdir)/configure $(am__configure_deps) THANKS TODO \
install-sh missing
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/VERSION.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
configure.lineno config.status.lineno
mkinstalldirs = $(install_sh) -d
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
AM_V_P = $(am__v_P_@AM_V@)
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
am__v_P_0 = false
am__v_P_1 = :
AM_V_GEN = $(am__v_GEN_@AM_V@)
am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
am__v_GEN_0 = @echo " GEN " $@;
am__v_GEN_1 =
AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
SOURCES =
DIST_SOURCES =
RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \
ctags-recursive dvi-recursive html-recursive info-recursive \
install-data-recursive install-dvi-recursive \
install-exec-recursive install-html-recursive \
install-info-recursive install-pdf-recursive \
install-ps-recursive install-recursive installcheck-recursive \
installdirs-recursive pdf-recursive ps-recursive \
tags-recursive uninstall-recursive
am__can_run_installinfo = \
case $$AM_UPDATE_INFO_DIR in \
n|no|NO) false;; \
*) (install-info --version) >/dev/null 2>&1;; \
esac
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
*) f=$$p;; \
esac;
am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
am__install_max = 40
am__nobase_strip_setup = \
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
am__nobase_strip = \
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
am__nobase_list = $(am__nobase_strip_setup); \
for p in $$list; do echo "$$p $$p"; done | \
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
if (++n[$$2] == $(am__install_max)) \
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
END { for (dir in files) print dir, files[dir] }'
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
am__uninstall_files_from_dir = { \
test -z "$$files" \
|| { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
|| { echo " ( cd '$$dir' && rm -f" $$files ")"; \
$(am__cd) "$$dir" && rm -f $$files; }; \
}
am__installdirs = "$(DESTDIR)$(docdir)"
DATA = $(doc_DATA)
RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
distclean-recursive maintainer-clean-recursive
am__recursive_targets = \
$(RECURSIVE_TARGETS) \
$(RECURSIVE_CLEAN_TARGETS) \
$(am__extra_recursive_targets)
AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \
cscope distdir dist dist-all distcheck
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
# Read a list of newline-separated strings from the standard input,
# and print each of them once, without duplicates. Input order is
# *not* preserved.
am__uniquify_input = $(AWK) '\
BEGIN { nonempty = 0; } \
{ items[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in items) print i; }; } \
'
# Make sure the list of sources is unique. This is necessary because,
# e.g., the same source file might be shared among _SOURCES variables
# for different programs/libraries.
am__define_uniq_tagged_files = \
list='$(am__tagged_files)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
CSCOPE = cscope
DIST_SUBDIRS = $(SUBDIRS)
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
distdir = $(PACKAGE)-$(VERSION)
top_distdir = $(distdir)
am__remove_distdir = \
if test -d "$(distdir)"; then \
find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \
&& rm -rf "$(distdir)" \
|| { sleep 5 && rm -rf "$(distdir)"; }; \
else :; fi
am__post_remove_distdir = $(am__remove_distdir)
am__relativize = \
dir0=`pwd`; \
sed_first='s,^\([^/]*\)/.*$$,\1,'; \
sed_rest='s,^[^/]*/*,,'; \
sed_last='s,^.*/\([^/]*\)$$,\1,'; \
sed_butlast='s,/*[^/]*$$,,'; \
while test -n "$$dir1"; do \
first=`echo "$$dir1" | sed -e "$$sed_first"`; \
if test "$$first" != "."; then \
if test "$$first" = ".."; then \
dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
else \
first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
if test "$$first2" = "$$first"; then \
dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
else \
dir2="../$$dir2"; \
fi; \
dir0="$$dir0"/"$$first"; \
fi; \
fi; \
dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
done; \
reldir="$$dir2"
DIST_ARCHIVES = $(distdir).tar.gz $(distdir).tar.xz
GZIP_ENV = --best
DIST_TARGETS = dist-xz dist-gzip
distuninstallcheck_listfiles = find . -type f -print
am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \
| sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$'
distcleancheck_listfiles = find . -type f -print
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
PACKAGE = @PACKAGE_TARNAME@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRIP = @STRIP@
VERSION = @VERSION@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
am__leading_dot = @am__leading_dot@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build_alias = @build_alias@
builddir = @builddir@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = $(datadir)/doc/$(PACKAGE)
dvidir = @dvidir@
exec_prefix = @exec_prefix@
host_alias = @host_alias@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
CONFIGURE_DEPENDENCIES = VERSION.m4
AUTOMAKE_OPTIONS = dist-xz check-news
SUBDIRS = doc mk sgml script
doc_DATA = AUTHORS COPYING ChangeLog README THANKS TODO NEWS
MY_RHOST = beskar.mdcc.cx
MY_RDIR = $(MY_RHOST):www/mdcc.cx/pub/caspar/
EXTRA_DIST = bootstrap setversion stamp.day stamp.month stamp.year VERSION.m4 VERSION
DISTCLEANFILES = VERSION.m4 VERSION stamp.day stamp.month stamp.year
all: all-recursive
.SUFFIXES:
am--refresh: Makefile
@:
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
echo ' cd $(srcdir) && $(AUTOMAKE) --gnu'; \
$(am__cd) $(srcdir) && $(AUTOMAKE) --gnu \
&& exit 0; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --gnu Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
echo ' $(SHELL) ./config.status'; \
$(SHELL) ./config.status;; \
*) \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
$(SHELL) ./config.status --recheck
$(top_srcdir)/configure: $(am__configure_deps)
$(am__cd) $(srcdir) && $(AUTOCONF)
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
$(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
$(am__aclocal_m4_deps):
install-docDATA: $(doc_DATA)
@$(NORMAL_INSTALL)
@list='$(doc_DATA)'; test -n "$(docdir)" || list=; \
if test -n "$$list"; then \
echo " $(MKDIR_P) '$(DESTDIR)$(docdir)'"; \
$(MKDIR_P) "$(DESTDIR)$(docdir)" || exit 1; \
fi; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(docdir)'"; \
$(INSTALL_DATA) $$files "$(DESTDIR)$(docdir)" || exit $$?; \
done
uninstall-docDATA:
@$(NORMAL_UNINSTALL)
@list='$(doc_DATA)'; test -n "$(docdir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
dir='$(DESTDIR)$(docdir)'; $(am__uninstall_files_from_dir)
# This directory's subdirectories are mostly independent; you can cd
# into them and run 'make' without going through this Makefile.
# To change the values of 'make' variables: instead of editing Makefiles,
# (1) if the variable is set in 'config.status', edit 'config.status'
# (which will cause the Makefiles to be regenerated when you run 'make');
# (2) otherwise, pass the desired values on the 'make' command line.
$(am__recursive_targets):
@fail=; \
if $(am__make_keepgoing); then \
failcom='fail=yes'; \
else \
failcom='exit 1'; \
fi; \
dot_seen=no; \
target=`echo $@ | sed s/-recursive//`; \
case "$@" in \
distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
*) list='$(SUBDIRS)' ;; \
esac; \
for subdir in $$list; do \
echo "Making $$target in $$subdir"; \
if test "$$subdir" = "."; then \
dot_seen=yes; \
local_target="$$target-am"; \
else \
local_target="$$target"; \
fi; \
($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| eval $$failcom; \
done; \
if test "$$dot_seen" = "no"; then \
$(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
fi; test -z "$$fail"
ID: $(am__tagged_files)
$(am__define_uniq_tagged_files); mkid -fID $$unique
tags: tags-recursive
TAGS: tags
tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
set x; \
here=`pwd`; \
if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
include_option=--etags-include; \
empty_fix=.; \
else \
include_option=--include; \
empty_fix=; \
fi; \
list='$(SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
test ! -f $$subdir/TAGS || \
set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
fi; \
done; \
$(am__define_uniq_tagged_files); \
shift; \
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
if test $$# -gt 0; then \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
"$$@" $$unique; \
else \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
$$unique; \
fi; \
fi
ctags: ctags-recursive
CTAGS: ctags
ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
$(am__define_uniq_tagged_files); \
test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$unique
GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
cscope: cscope.files
test ! -s cscope.files \
|| $(CSCOPE) -b -q $(AM_CSCOPEFLAGS) $(CSCOPEFLAGS) -i cscope.files $(CSCOPE_ARGS)
clean-cscope:
-rm -f cscope.files
cscope.files: clean-cscope cscopelist
cscopelist: cscopelist-recursive
cscopelist-am: $(am__tagged_files)
list='$(am__tagged_files)'; \
case "$(srcdir)" in \
[\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
*) sdir=$(subdir)/$(srcdir) ;; \
esac; \
for i in $$list; do \
if test -f "$$i"; then \
echo "$(subdir)/$$i"; \
else \
echo "$$sdir/$$i"; \
fi; \
done >> $(top_builddir)/cscope.files
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-rm -f cscope.out cscope.in.out cscope.po.out cscope.files
distdir: $(DISTFILES)
@case `sed 15q $(srcdir)/NEWS` in \
*"$(VERSION)"*) : ;; \
*) \
echo "NEWS not updated; not releasing" 1>&2; \
exit 1;; \
esac
$(am__remove_distdir)
test -d "$(distdir)" || mkdir "$(distdir)"
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
dist_files=`for file in $$list; do echo $$file; done | \
sed -e "s|^$$srcdirstrip/||;t" \
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
$(am__make_dryrun) \
|| test -d "$(distdir)/$$subdir" \
|| $(MKDIR_P) "$(distdir)/$$subdir" \
|| exit 1; \
dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
$(am__relativize); \
new_distdir=$$reldir; \
dir1=$$subdir; dir2="$(top_distdir)"; \
$(am__relativize); \
new_top_distdir=$$reldir; \
echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
($(am__cd) $$subdir && \
$(MAKE) $(AM_MAKEFLAGS) \
top_distdir="$$new_top_distdir" \
distdir="$$new_distdir" \
am__remove_distdir=: \
am__skip_length_check=: \
am__skip_mode_fix=: \
distdir) \
|| exit 1; \
fi; \
done
-test -n "$(am__skip_mode_fix)" \
|| find "$(distdir)" -type d ! -perm -755 \
-exec chmod u+rwx,go+rx {} \; -o \
! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
! -type d ! -perm -400 -exec chmod a+r {} \; -o \
! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \
|| chmod -R a+r "$(distdir)"
dist-gzip: distdir
tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
$(am__post_remove_distdir)
dist-bzip2: distdir
tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2
$(am__post_remove_distdir)
dist-lzip: distdir
tardir=$(distdir) && $(am__tar) | lzip -c $${LZIP_OPT--9} >$(distdir).tar.lz
$(am__post_remove_distdir)
dist-xz: distdir
tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz
$(am__post_remove_distdir)
dist-tarZ: distdir
@echo WARNING: "Support for shar distribution archives is" \
"deprecated." >&2
@echo WARNING: "It will be removed altogether in Automake 2.0" >&2
tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
$(am__post_remove_distdir)
dist-shar: distdir
@echo WARNING: "Support for distribution archives compressed with" \
"legacy program 'compress' is deprecated." >&2
@echo WARNING: "It will be removed altogether in Automake 2.0" >&2
shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
$(am__post_remove_distdir)
dist-zip: distdir
-rm -f $(distdir).zip
zip -rq $(distdir).zip $(distdir)
$(am__post_remove_distdir)
dist dist-all:
$(MAKE) $(AM_MAKEFLAGS) $(DIST_TARGETS) am__post_remove_distdir='@:'
$(am__post_remove_distdir)
# This target untars the dist file and tries a VPATH configuration. Then
# it guarantees that the distribution is self-contained by making another
# tarfile.
distcheck: dist
case '$(DIST_ARCHIVES)' in \
*.tar.gz*) \
GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\
*.tar.bz2*) \
bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\
*.tar.lz*) \
lzip -dc $(distdir).tar.lz | $(am__untar) ;;\
*.tar.xz*) \
xz -dc $(distdir).tar.xz | $(am__untar) ;;\
*.tar.Z*) \
uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
*.shar.gz*) \
GZIP=$(GZIP_ENV) gzip -dc $(distdir).shar.gz | unshar ;;\
*.zip*) \
unzip $(distdir).zip ;;\
esac
chmod -R a-w $(distdir)
chmod u+w $(distdir)
mkdir $(distdir)/_build $(distdir)/_inst
chmod a-w $(distdir)
test -d $(distdir)/_build || exit 0; \
dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
&& dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
&& am__cwd=`pwd` \
&& $(am__cd) $(distdir)/_build \
&& ../configure \
$(AM_DISTCHECK_CONFIGURE_FLAGS) \
$(DISTCHECK_CONFIGURE_FLAGS) \
--srcdir=.. --prefix="$$dc_install_base" \
&& $(MAKE) $(AM_MAKEFLAGS) \
&& $(MAKE) $(AM_MAKEFLAGS) dvi \
&& $(MAKE) $(AM_MAKEFLAGS) check \
&& $(MAKE) $(AM_MAKEFLAGS) install \
&& $(MAKE) $(AM_MAKEFLAGS) installcheck \
&& $(MAKE) $(AM_MAKEFLAGS) uninstall \
&& $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \
distuninstallcheck \
&& chmod -R a-w "$$dc_install_base" \
&& ({ \
(cd ../.. && umask 077 && mkdir "$$dc_destdir") \
&& $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \
&& $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \
&& $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \
distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \
} || { rm -rf "$$dc_destdir"; exit 1; }) \
&& rm -rf "$$dc_destdir" \
&& $(MAKE) $(AM_MAKEFLAGS) dist \
&& rm -rf $(DIST_ARCHIVES) \
&& $(MAKE) $(AM_MAKEFLAGS) distcleancheck \
&& cd "$$am__cwd" \
|| exit 1
$(am__post_remove_distdir)
@(echo "$(distdir) archives ready for distribution: "; \
list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x'
distuninstallcheck:
@test -n '$(distuninstallcheck_dir)' || { \
echo 'ERROR: trying to run $@ with an empty' \
'$$(distuninstallcheck_dir)' >&2; \
exit 1; \
}; \
$(am__cd) '$(distuninstallcheck_dir)' || { \
echo 'ERROR: cannot chdir into $(distuninstallcheck_dir)' >&2; \
exit 1; \
}; \
test `$(am__distuninstallcheck_listfiles) | wc -l` -eq 0 \
|| { echo "ERROR: files left after uninstall:" ; \
if test -n "$(DESTDIR)"; then \
echo " (check DESTDIR support)"; \
fi ; \
$(distuninstallcheck_listfiles) ; \
exit 1; } >&2
distcleancheck: distclean
@if test '$(srcdir)' = . ; then \
echo "ERROR: distcleancheck can only run from a VPATH build" ; \
exit 1 ; \
fi
@test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
|| { echo "ERROR: files left in build directory after distclean:" ; \
$(distcleancheck_listfiles) ; \
exit 1; } >&2
check-am: all-am
check: check-recursive
all-am: Makefile $(DATA)
installdirs: installdirs-recursive
installdirs-am:
for dir in "$(DESTDIR)$(docdir)"; do \
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
done
install: install-recursive
install-exec: install-exec-recursive
install-data: install-data-recursive
uninstall: uninstall-recursive
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
installcheck: installcheck-recursive
install-strip:
if test -z '$(STRIP)'; then \
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
install; \
else \
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
fi
mostlyclean-generic:
clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
clean: clean-recursive
clean-am: clean-generic mostlyclean-am
distclean: distclean-recursive
-rm -f $(am__CONFIG_DISTCLEAN_FILES)
-rm -f Makefile
distclean-am: clean-am distclean-generic distclean-tags
dvi: dvi-recursive
dvi-am:
html: html-recursive
html-am:
info: info-recursive
info-am:
install-data-am: install-docDATA
install-dvi: install-dvi-recursive
install-dvi-am:
install-exec-am:
install-html: install-html-recursive
install-html-am:
install-info: install-info-recursive
install-info-am:
install-man:
install-pdf: install-pdf-recursive
install-pdf-am:
install-ps: install-ps-recursive
install-ps-am:
installcheck-am:
maintainer-clean: maintainer-clean-recursive
-rm -f $(am__CONFIG_DISTCLEAN_FILES)
-rm -rf $(top_srcdir)/autom4te.cache
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-recursive
mostlyclean-am: mostlyclean-generic
pdf: pdf-recursive
pdf-am:
ps: ps-recursive
ps-am:
uninstall-am: uninstall-docDATA
.MAKE: $(am__recursive_targets) install-am install-strip
.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \
am--refresh check check-am clean clean-cscope clean-generic \
cscope cscopelist-am ctags ctags-am dist dist-all dist-bzip2 \
dist-gzip dist-lzip dist-shar dist-tarZ dist-xz dist-zip \
distcheck distclean distclean-generic distclean-tags \
distcleancheck distdir distuninstallcheck dvi dvi-am html \
html-am info info-am install install-am install-data \
install-data-am install-docDATA install-dvi install-dvi-am \
install-exec install-exec-am install-html install-html-am \
install-info install-info-am install-man install-pdf \
install-pdf-am install-ps install-ps-am install-strip \
installcheck installcheck-am installdirs installdirs-am \
maintainer-clean maintainer-clean-generic mostlyclean \
mostlyclean-generic pdf pdf-am ps ps-am tags tags-am uninstall \
uninstall-am uninstall-docDATA
ChangeLog: NEWS
git log --pretty --numstat --summary | sed 's/][^>]*>//g; s/][^>]*>//g' | git2cl >ChangeLog
VERSION.m4 VERSION stamp.year stamp.month stamp.day: ChangeLog
$(top_srcdir)/setversion
sign:
for i in $(DIST_ARCHIVES); do echo "gpg --armor --detach-sign $$i"; gpg --armor --detach-sign $$i; done
publish:
for i in $(DIST_ARCHIVES); do echo "scp $$i $$i.asc $(MY_RDIR)"; scp $$i $$i.asc $(MY_RDIR); done
@echo now run ssh $(MY_RHOST) update-tar-symlinks caspar
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
caspar-20170830/Makefile.am 0000644 0001751 0001751 00000003043 13151515253 012211 0000000 0000000 ## Process this file with automake to produce Makefile.in
## This file is maintained at http://git.mdcc.cx/caspar
# This script is free software; you can distribute it and/or modify it
# under the terms of the GNU GPL. See the file COPYING.
## Copyright (C) 2003, 2004, 2005, 2006, 2010, 2011 Joost van Baal
## see booststrap for git2cl
ChangeLog: NEWS
git log --pretty --numstat --summary | sed 's/][^>]*>//g; s/][^>]*>//g' | git2cl >ChangeLog
VERSION.m4 VERSION stamp.year stamp.month stamp.day: ChangeLog
$(top_srcdir)/setversion
CONFIGURE_DEPENDENCIES = VERSION.m4
## CONFIGURE_DEPENDENCIES = VERSION.m4
## Hook `dist-bzip2' to `dist'.
AUTOMAKE_OPTIONS = dist-xz check-news
## used in make dist[check]
##VERSION = @PACKAGE_VERSION@
PACKAGE = @PACKAGE_TARNAME@
SUBDIRS = doc mk sgml script
docdir = $(datadir)/doc/$(PACKAGE)
doc_DATA = AUTHORS COPYING ChangeLog README THANKS TODO NEWS
## local targets
MY_RHOST = beskar.mdcc.cx
MY_RDIR = $(MY_RHOST):www/mdcc.cx/pub/caspar/
sign:
for i in $(DIST_ARCHIVES); do echo "gpg --armor --detach-sign $$i"; gpg --armor --detach-sign $$i; done
publish:
for i in $(DIST_ARCHIVES); do echo "scp $$i $$i.asc $(MY_RDIR)"; scp $$i $$i.asc $(MY_RDIR); done
@echo now run ssh $(MY_RHOST) update-tar-symlinks caspar
## Only files from the current directory or from subdirectory which
## don't have their own Makefile.am should be listed here.
EXTRA_DIST = bootstrap setversion stamp.day stamp.month stamp.year VERSION.m4 VERSION
DISTCLEANFILES = VERSION.m4 VERSION stamp.day stamp.month stamp.year
caspar-20170830/configure 0000755 0001751 0001751 00000315473 13151515274 012104 0000000 0000000 #! /bin/sh
# From configure.ac 20170830.
# Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.69 for Caspar 20170830.
#
# Report bugs to .
#
#
# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
#
#
# This configure script is free software; the Free Software Foundation
# gives unlimited permission to copy, distribute and modify it.
#
#
# Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2009, 2010 Joost van Baal
# Copyright (C) 2012, 2013, 2014 Joost van Baal-Ilić
#
## -------------------- ##
## M4sh Initialization. ##
## -------------------- ##
# Be more Bourne compatible
DUALCASE=1; export DUALCASE # for MKS sh
if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
emulate sh
NULLCMD=:
# Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
# is contrary to our usage. Disable this feature.
alias -g '${1+"$@"}'='"$@"'
setopt NO_GLOB_SUBST
else
case `(set -o) 2>/dev/null` in #(
*posix*) :
set -o posix ;; #(
*) :
;;
esac
fi
as_nl='
'
export as_nl
# Printing a long string crashes Solaris 7 /usr/bin/printf.
as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
# Prefer a ksh shell builtin over an external printf program on Solaris,
# but without wasting forks for bash or zsh.
if test -z "$BASH_VERSION$ZSH_VERSION" \
&& (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
as_echo='print -r --'
as_echo_n='print -rn --'
elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
as_echo='printf %s\n'
as_echo_n='printf %s'
else
if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
as_echo_n='/usr/ucb/echo -n'
else
as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
as_echo_n_body='eval
arg=$1;
case $arg in #(
*"$as_nl"*)
expr "X$arg" : "X\\(.*\\)$as_nl";
arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
esac;
expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
'
export as_echo_n_body
as_echo_n='sh -c $as_echo_n_body as_echo'
fi
export as_echo_body
as_echo='sh -c $as_echo_body as_echo'
fi
# The user is always right.
if test "${PATH_SEPARATOR+set}" != set; then
PATH_SEPARATOR=:
(PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
(PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
PATH_SEPARATOR=';'
}
fi
# IFS
# We need space, tab and new line, in precisely that order. Quoting is
# there to prevent editors from complaining about space-tab.
# (If _AS_PATH_WALK were called with IFS unset, it would disable word
# splitting by setting IFS to empty value.)
IFS=" "" $as_nl"
# Find who we are. Look in the path if we contain no directory separator.
as_myself=
case $0 in #((
*[\\/]* ) as_myself=$0 ;;
*) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
done
IFS=$as_save_IFS
;;
esac
# We did not find ourselves, most probably we were run as `sh COMMAND'
# in which case we are not to be found in the path.
if test "x$as_myself" = x; then
as_myself=$0
fi
if test ! -f "$as_myself"; then
$as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
exit 1
fi
# Unset variables that we do not need and which cause bugs (e.g. in
# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1"
# suppresses any "Segmentation fault" message there. '((' could
# trigger a bug in pdksh 5.2.14.
for as_var in BASH_ENV ENV MAIL MAILPATH
do eval test x\${$as_var+set} = xset \
&& ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
done
PS1='$ '
PS2='> '
PS4='+ '
# NLS nuisances.
LC_ALL=C
export LC_ALL
LANGUAGE=C
export LANGUAGE
# CDPATH.
(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
# Use a proper internal environment variable to ensure we don't fall
# into an infinite loop, continuously re-executing ourselves.
if test x"${_as_can_reexec}" != xno && test "x$CONFIG_SHELL" != x; then
_as_can_reexec=no; export _as_can_reexec;
# We cannot yet assume a decent shell, so we have to provide a
# neutralization value for shells without unset; and this also
# works around shells that cannot unset nonexistent variables.
# Preserve -v and -x to the replacement shell.
BASH_ENV=/dev/null
ENV=/dev/null
(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
case $- in # ((((
*v*x* | *x*v* ) as_opts=-vx ;;
*v* ) as_opts=-v ;;
*x* ) as_opts=-x ;;
* ) as_opts= ;;
esac
exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
# Admittedly, this is quite paranoid, since all the known shells bail
# out after a failed `exec'.
$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
as_fn_exit 255
fi
# We don't want this to propagate to other subprocesses.
{ _as_can_reexec=; unset _as_can_reexec;}
if test "x$CONFIG_SHELL" = x; then
as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then :
emulate sh
NULLCMD=:
# Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which
# is contrary to our usage. Disable this feature.
alias -g '\${1+\"\$@\"}'='\"\$@\"'
setopt NO_GLOB_SUBST
else
case \`(set -o) 2>/dev/null\` in #(
*posix*) :
set -o posix ;; #(
*) :
;;
esac
fi
"
as_required="as_fn_return () { (exit \$1); }
as_fn_success () { as_fn_return 0; }
as_fn_failure () { as_fn_return 1; }
as_fn_ret_success () { return 0; }
as_fn_ret_failure () { return 1; }
exitcode=0
as_fn_success || { exitcode=1; echo as_fn_success failed.; }
as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; }
as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; }
as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; }
if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then :
else
exitcode=1; echo positional parameters were not saved.
fi
test x\$exitcode = x0 || exit 1
test -x / || exit 1"
as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO
as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO
eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" &&
test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1"
if (eval "$as_required") 2>/dev/null; then :
as_have_required=yes
else
as_have_required=no
fi
if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then :
else
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
as_found=false
for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
as_found=:
case $as_dir in #(
/*)
for as_base in sh bash ksh sh5; do
# Try only shells that exist, to save several forks.
as_shell=$as_dir/$as_base
if { test -f "$as_shell" || test -f "$as_shell.exe"; } &&
{ $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then :
CONFIG_SHELL=$as_shell as_have_required=yes
if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then :
break 2
fi
fi
done;;
esac
as_found=false
done
$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } &&
{ $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then :
CONFIG_SHELL=$SHELL as_have_required=yes
fi; }
IFS=$as_save_IFS
if test "x$CONFIG_SHELL" != x; then :
export CONFIG_SHELL
# We cannot yet assume a decent shell, so we have to provide a
# neutralization value for shells without unset; and this also
# works around shells that cannot unset nonexistent variables.
# Preserve -v and -x to the replacement shell.
BASH_ENV=/dev/null
ENV=/dev/null
(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
case $- in # ((((
*v*x* | *x*v* ) as_opts=-vx ;;
*v* ) as_opts=-v ;;
*x* ) as_opts=-x ;;
* ) as_opts= ;;
esac
exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
# Admittedly, this is quite paranoid, since all the known shells bail
# out after a failed `exec'.
$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
exit 255
fi
if test x$as_have_required = xno; then :
$as_echo "$0: This script requires a shell more modern than all"
$as_echo "$0: the shells that I found on your system."
if test x${ZSH_VERSION+set} = xset ; then
$as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should"
$as_echo "$0: be upgraded to zsh 4.3.4 or later."
else
$as_echo "$0: Please tell bug-autoconf@gnu.org and
$0: joostvb-caspar@mdcc.cx about your system, including any
$0: error possibly output before this message. Then install
$0: a modern shell, or manually run the script under such a
$0: shell if you do have one."
fi
exit 1
fi
fi
fi
SHELL=${CONFIG_SHELL-/bin/sh}
export SHELL
# Unset more variables known to interfere with behavior of common tools.
CLICOLOR_FORCE= GREP_OPTIONS=
unset CLICOLOR_FORCE GREP_OPTIONS
## --------------------- ##
## M4sh Shell Functions. ##
## --------------------- ##
# as_fn_unset VAR
# ---------------
# Portably unset VAR.
as_fn_unset ()
{
{ eval $1=; unset $1;}
}
as_unset=as_fn_unset
# as_fn_set_status STATUS
# -----------------------
# Set $? to STATUS, without forking.
as_fn_set_status ()
{
return $1
} # as_fn_set_status
# as_fn_exit STATUS
# -----------------
# Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
as_fn_exit ()
{
set +e
as_fn_set_status $1
exit $1
} # as_fn_exit
# as_fn_mkdir_p
# -------------
# Create "$as_dir" as a directory, including parents if necessary.
as_fn_mkdir_p ()
{
case $as_dir in #(
-*) as_dir=./$as_dir;;
esac
test -d "$as_dir" || eval $as_mkdir_p || {
as_dirs=
while :; do
case $as_dir in #(
*\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
*) as_qdir=$as_dir;;
esac
as_dirs="'$as_qdir' $as_dirs"
as_dir=`$as_dirname -- "$as_dir" ||
$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
X"$as_dir" : 'X\(//\)[^/]' \| \
X"$as_dir" : 'X\(//\)$' \| \
X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
$as_echo X"$as_dir" |
sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
s//\1/
q
}
/^X\(\/\/\)[^/].*/{
s//\1/
q
}
/^X\(\/\/\)$/{
s//\1/
q
}
/^X\(\/\).*/{
s//\1/
q
}
s/.*/./; q'`
test -d "$as_dir" && break
done
test -z "$as_dirs" || eval "mkdir $as_dirs"
} || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir"
} # as_fn_mkdir_p
# as_fn_executable_p FILE
# -----------------------
# Test if FILE is an executable regular file.
as_fn_executable_p ()
{
test -f "$1" && test -x "$1"
} # as_fn_executable_p
# as_fn_append VAR VALUE
# ----------------------
# Append the text in VALUE to the end of the definition contained in VAR. Take
# advantage of any shell optimizations that allow amortized linear growth over
# repeated appends, instead of the typical quadratic growth present in naive
# implementations.
if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
eval 'as_fn_append ()
{
eval $1+=\$2
}'
else
as_fn_append ()
{
eval $1=\$$1\$2
}
fi # as_fn_append
# as_fn_arith ARG...
# ------------------
# Perform arithmetic evaluation on the ARGs, and store the result in the
# global $as_val. Take advantage of shells that can avoid forks. The arguments
# must be portable across $(()) and expr.
if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
eval 'as_fn_arith ()
{
as_val=$(( $* ))
}'
else
as_fn_arith ()
{
as_val=`expr "$@" || test $? -eq 1`
}
fi # as_fn_arith
# as_fn_error STATUS ERROR [LINENO LOG_FD]
# ----------------------------------------
# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are
# provided, also output the error to LOG_FD, referencing LINENO. Then exit the
# script with STATUS, using 1 if that was 0.
as_fn_error ()
{
as_status=$1; test $as_status -eq 0 && as_status=1
if test "$4"; then
as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
$as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
fi
$as_echo "$as_me: error: $2" >&2
as_fn_exit $as_status
} # as_fn_error
if expr a : '\(a\)' >/dev/null 2>&1 &&
test "X`expr 00001 : '.*\(...\)'`" = X001; then
as_expr=expr
else
as_expr=false
fi
if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
as_basename=basename
else
as_basename=false
fi
if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
as_dirname=dirname
else
as_dirname=false
fi
as_me=`$as_basename -- "$0" ||
$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
X"$0" : 'X\(//\)$' \| \
X"$0" : 'X\(/\)' \| . 2>/dev/null ||
$as_echo X/"$0" |
sed '/^.*\/\([^/][^/]*\)\/*$/{
s//\1/
q
}
/^X\/\(\/\/\)$/{
s//\1/
q
}
/^X\/\(\/\).*/{
s//\1/
q
}
s/.*/./; q'`
# Avoid depending upon Character Ranges.
as_cr_letters='abcdefghijklmnopqrstuvwxyz'
as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
as_cr_Letters=$as_cr_letters$as_cr_LETTERS
as_cr_digits='0123456789'
as_cr_alnum=$as_cr_Letters$as_cr_digits
as_lineno_1=$LINENO as_lineno_1a=$LINENO
as_lineno_2=$LINENO as_lineno_2a=$LINENO
eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" &&
test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || {
# Blame Lee E. McMahon (1931-1989) for sed's syntax. :-)
sed -n '
p
/[$]LINENO/=
' <$as_myself |
sed '
s/[$]LINENO.*/&-/
t lineno
b
:lineno
N
:loop
s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/
t loop
s/-\n.*//
' >$as_me.lineno &&
chmod +x "$as_me.lineno" ||
{ $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
# If we had to re-execute with $CONFIG_SHELL, we're ensured to have
# already done that, so ensure we don't try to do so again and fall
# in an infinite loop. This has already happened in practice.
_as_can_reexec=no; export _as_can_reexec
# Don't try to exec as it changes $[0], causing all sort of problems
# (the dirname of $[0] is not the place where we might find the
# original and so on. Autoconf is especially sensitive to this).
. "./$as_me.lineno"
# Exit status is that of the last command.
exit
}
ECHO_C= ECHO_N= ECHO_T=
case `echo -n x` in #(((((
-n*)
case `echo 'xy\c'` in
*c*) ECHO_T=' ';; # ECHO_T is single tab character.
xy) ECHO_C='\c';;
*) echo `echo ksh88 bug on AIX 6.1` > /dev/null
ECHO_T=' ';;
esac;;
*)
ECHO_N='-n';;
esac
rm -f conf$$ conf$$.exe conf$$.file
if test -d conf$$.dir; then
rm -f conf$$.dir/conf$$.file
else
rm -f conf$$.dir
mkdir conf$$.dir 2>/dev/null
fi
if (echo >conf$$.file) 2>/dev/null; then
if ln -s conf$$.file conf$$ 2>/dev/null; then
as_ln_s='ln -s'
# ... but there are two gotchas:
# 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
# 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
# In both cases, we have to default to `cp -pR'.
ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
as_ln_s='cp -pR'
elif ln conf$$.file conf$$ 2>/dev/null; then
as_ln_s=ln
else
as_ln_s='cp -pR'
fi
else
as_ln_s='cp -pR'
fi
rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
rmdir conf$$.dir 2>/dev/null
if mkdir -p . 2>/dev/null; then
as_mkdir_p='mkdir -p "$as_dir"'
else
test -d ./-p && rmdir ./-p
as_mkdir_p=false
fi
as_test_x='test -x'
as_executable_p=as_fn_executable_p
# Sed expression to map a string onto a valid CPP name.
as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
# Sed expression to map a string onto a valid variable name.
as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
test -n "$DJDIR" || exec 7<&0 &1
# Name of the host.
# hostname on some systems (SVR3.2, old GNU/Linux) returns a bogus exit status,
# so uname gets run too.
ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
#
# Initializations.
#
ac_default_prefix=/usr/local
ac_clean_files=
ac_config_libobj_dir=.
LIBOBJS=
cross_compiling=no
subdirs=
MFLAGS=
MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='Caspar'
PACKAGE_TARNAME='caspar'
PACKAGE_VERSION='20170830'
PACKAGE_STRING='Caspar 20170830'
PACKAGE_BUGREPORT='joostvb-caspar@mdcc.cx'
PACKAGE_URL=''
ac_subst_vars='LTLIBOBJS
LIBOBJS
LN_S
AM_BACKSLASH
AM_DEFAULT_VERBOSITY
AM_DEFAULT_V
AM_V
am__untar
am__tar
AMTAR
am__leading_dot
SET_MAKE
AWK
mkdir_p
MKDIR_P
INSTALL_STRIP_PROGRAM
STRIP
install_sh
MAKEINFO
AUTOHEADER
AUTOMAKE
AUTOCONF
ACLOCAL
VERSION
PACKAGE
CYGPATH_W
am__isrc
INSTALL_DATA
INSTALL_SCRIPT
INSTALL_PROGRAM
target_alias
host_alias
build_alias
LIBS
ECHO_T
ECHO_N
ECHO_C
DEFS
mandir
localedir
libdir
psdir
pdfdir
dvidir
htmldir
infodir
docdir
oldincludedir
includedir
localstatedir
sharedstatedir
sysconfdir
datadir
datarootdir
libexecdir
sbindir
bindir
program_transform_name
prefix
exec_prefix
PACKAGE_URL
PACKAGE_BUGREPORT
PACKAGE_STRING
PACKAGE_VERSION
PACKAGE_TARNAME
PACKAGE_NAME
PATH_SEPARATOR
SHELL'
ac_subst_files=''
ac_user_opts='
enable_option_checking
enable_silent_rules
'
ac_precious_vars='build_alias
host_alias
target_alias'
# Initialize some variables set by options.
ac_init_help=
ac_init_version=false
ac_unrecognized_opts=
ac_unrecognized_sep=
# The variables have the same names as the options, with
# dashes changed to underlines.
cache_file=/dev/null
exec_prefix=NONE
no_create=
no_recursion=
prefix=NONE
program_prefix=NONE
program_suffix=NONE
program_transform_name=s,x,x,
silent=
site=
srcdir=
verbose=
x_includes=NONE
x_libraries=NONE
# Installation directory options.
# These are left unexpanded so users can "make install exec_prefix=/foo"
# and all the variables that are supposed to be based on exec_prefix
# by default will actually change.
# Use braces instead of parens because sh, perl, etc. also accept them.
# (The list follows the same order as the GNU Coding Standards.)
bindir='${exec_prefix}/bin'
sbindir='${exec_prefix}/sbin'
libexecdir='${exec_prefix}/libexec'
datarootdir='${prefix}/share'
datadir='${datarootdir}'
sysconfdir='${prefix}/etc'
sharedstatedir='${prefix}/com'
localstatedir='${prefix}/var'
includedir='${prefix}/include'
oldincludedir='/usr/include'
docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
infodir='${datarootdir}/info'
htmldir='${docdir}'
dvidir='${docdir}'
pdfdir='${docdir}'
psdir='${docdir}'
libdir='${exec_prefix}/lib'
localedir='${datarootdir}/locale'
mandir='${datarootdir}/man'
ac_prev=
ac_dashdash=
for ac_option
do
# If the previous option needs an argument, assign it.
if test -n "$ac_prev"; then
eval $ac_prev=\$ac_option
ac_prev=
continue
fi
case $ac_option in
*=?*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;;
*=) ac_optarg= ;;
*) ac_optarg=yes ;;
esac
# Accept the important Cygnus configure options, so we can diagnose typos.
case $ac_dashdash$ac_option in
--)
ac_dashdash=yes ;;
-bindir | --bindir | --bindi | --bind | --bin | --bi)
ac_prev=bindir ;;
-bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
bindir=$ac_optarg ;;
-build | --build | --buil | --bui | --bu)
ac_prev=build_alias ;;
-build=* | --build=* | --buil=* | --bui=* | --bu=*)
build_alias=$ac_optarg ;;
-cache-file | --cache-file | --cache-fil | --cache-fi \
| --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
ac_prev=cache_file ;;
-cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
| --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
cache_file=$ac_optarg ;;
--config-cache | -C)
cache_file=config.cache ;;
-datadir | --datadir | --datadi | --datad)
ac_prev=datadir ;;
-datadir=* | --datadir=* | --datadi=* | --datad=*)
datadir=$ac_optarg ;;
-datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \
| --dataroo | --dataro | --datar)
ac_prev=datarootdir ;;
-datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \
| --dataroot=* | --dataroo=* | --dataro=* | --datar=*)
datarootdir=$ac_optarg ;;
-disable-* | --disable-*)
ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
# Reject names that are not valid shell variable names.
expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
as_fn_error $? "invalid feature name: $ac_useropt"
ac_useropt_orig=$ac_useropt
ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
case $ac_user_opts in
*"
"enable_$ac_useropt"
"*) ;;
*) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--disable-$ac_useropt_orig"
ac_unrecognized_sep=', ';;
esac
eval enable_$ac_useropt=no ;;
-docdir | --docdir | --docdi | --doc | --do)
ac_prev=docdir ;;
-docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*)
docdir=$ac_optarg ;;
-dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv)
ac_prev=dvidir ;;
-dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*)
dvidir=$ac_optarg ;;
-enable-* | --enable-*)
ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
# Reject names that are not valid shell variable names.
expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
as_fn_error $? "invalid feature name: $ac_useropt"
ac_useropt_orig=$ac_useropt
ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
case $ac_user_opts in
*"
"enable_$ac_useropt"
"*) ;;
*) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig"
ac_unrecognized_sep=', ';;
esac
eval enable_$ac_useropt=\$ac_optarg ;;
-exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
| --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
| --exec | --exe | --ex)
ac_prev=exec_prefix ;;
-exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
| --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
| --exec=* | --exe=* | --ex=*)
exec_prefix=$ac_optarg ;;
-gas | --gas | --ga | --g)
# Obsolete; use --with-gas.
with_gas=yes ;;
-help | --help | --hel | --he | -h)
ac_init_help=long ;;
-help=r* | --help=r* | --hel=r* | --he=r* | -hr*)
ac_init_help=recursive ;;
-help=s* | --help=s* | --hel=s* | --he=s* | -hs*)
ac_init_help=short ;;
-host | --host | --hos | --ho)
ac_prev=host_alias ;;
-host=* | --host=* | --hos=* | --ho=*)
host_alias=$ac_optarg ;;
-htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht)
ac_prev=htmldir ;;
-htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \
| --ht=*)
htmldir=$ac_optarg ;;
-includedir | --includedir | --includedi | --included | --include \
| --includ | --inclu | --incl | --inc)
ac_prev=includedir ;;
-includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
| --includ=* | --inclu=* | --incl=* | --inc=*)
includedir=$ac_optarg ;;
-infodir | --infodir | --infodi | --infod | --info | --inf)
ac_prev=infodir ;;
-infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
infodir=$ac_optarg ;;
-libdir | --libdir | --libdi | --libd)
ac_prev=libdir ;;
-libdir=* | --libdir=* | --libdi=* | --libd=*)
libdir=$ac_optarg ;;
-libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
| --libexe | --libex | --libe)
ac_prev=libexecdir ;;
-libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
| --libexe=* | --libex=* | --libe=*)
libexecdir=$ac_optarg ;;
-localedir | --localedir | --localedi | --localed | --locale)
ac_prev=localedir ;;
-localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*)
localedir=$ac_optarg ;;
-localstatedir | --localstatedir | --localstatedi | --localstated \
| --localstate | --localstat | --localsta | --localst | --locals)
ac_prev=localstatedir ;;
-localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
| --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*)
localstatedir=$ac_optarg ;;
-mandir | --mandir | --mandi | --mand | --man | --ma | --m)
ac_prev=mandir ;;
-mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
mandir=$ac_optarg ;;
-nfp | --nfp | --nf)
# Obsolete; use --without-fp.
with_fp=no ;;
-no-create | --no-create | --no-creat | --no-crea | --no-cre \
| --no-cr | --no-c | -n)
no_create=yes ;;
-no-recursion | --no-recursion | --no-recursio | --no-recursi \
| --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
no_recursion=yes ;;
-oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
| --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
| --oldin | --oldi | --old | --ol | --o)
ac_prev=oldincludedir ;;
-oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
| --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
| --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
oldincludedir=$ac_optarg ;;
-prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
ac_prev=prefix ;;
-prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
prefix=$ac_optarg ;;
-program-prefix | --program-prefix | --program-prefi | --program-pref \
| --program-pre | --program-pr | --program-p)
ac_prev=program_prefix ;;
-program-prefix=* | --program-prefix=* | --program-prefi=* \
| --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
program_prefix=$ac_optarg ;;
-program-suffix | --program-suffix | --program-suffi | --program-suff \
| --program-suf | --program-su | --program-s)
ac_prev=program_suffix ;;
-program-suffix=* | --program-suffix=* | --program-suffi=* \
| --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
program_suffix=$ac_optarg ;;
-program-transform-name | --program-transform-name \
| --program-transform-nam | --program-transform-na \
| --program-transform-n | --program-transform- \
| --program-transform | --program-transfor \
| --program-transfo | --program-transf \
| --program-trans | --program-tran \
| --progr-tra | --program-tr | --program-t)
ac_prev=program_transform_name ;;
-program-transform-name=* | --program-transform-name=* \
| --program-transform-nam=* | --program-transform-na=* \
| --program-transform-n=* | --program-transform-=* \
| --program-transform=* | --program-transfor=* \
| --program-transfo=* | --program-transf=* \
| --program-trans=* | --program-tran=* \
| --progr-tra=* | --program-tr=* | --program-t=*)
program_transform_name=$ac_optarg ;;
-pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd)
ac_prev=pdfdir ;;
-pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*)
pdfdir=$ac_optarg ;;
-psdir | --psdir | --psdi | --psd | --ps)
ac_prev=psdir ;;
-psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*)
psdir=$ac_optarg ;;
-q | -quiet | --quiet | --quie | --qui | --qu | --q \
| -silent | --silent | --silen | --sile | --sil)
silent=yes ;;
-sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
ac_prev=sbindir ;;
-sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
| --sbi=* | --sb=*)
sbindir=$ac_optarg ;;
-sharedstatedir | --sharedstatedir | --sharedstatedi \
| --sharedstated | --sharedstate | --sharedstat | --sharedsta \
| --sharedst | --shareds | --shared | --share | --shar \
| --sha | --sh)
ac_prev=sharedstatedir ;;
-sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
| --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
| --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
| --sha=* | --sh=*)
sharedstatedir=$ac_optarg ;;
-site | --site | --sit)
ac_prev=site ;;
-site=* | --site=* | --sit=*)
site=$ac_optarg ;;
-srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
ac_prev=srcdir ;;
-srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
srcdir=$ac_optarg ;;
-sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
| --syscon | --sysco | --sysc | --sys | --sy)
ac_prev=sysconfdir ;;
-sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
| --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
sysconfdir=$ac_optarg ;;
-target | --target | --targe | --targ | --tar | --ta | --t)
ac_prev=target_alias ;;
-target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
target_alias=$ac_optarg ;;
-v | -verbose | --verbose | --verbos | --verbo | --verb)
verbose=yes ;;
-version | --version | --versio | --versi | --vers | -V)
ac_init_version=: ;;
-with-* | --with-*)
ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
# Reject names that are not valid shell variable names.
expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
as_fn_error $? "invalid package name: $ac_useropt"
ac_useropt_orig=$ac_useropt
ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
case $ac_user_opts in
*"
"with_$ac_useropt"
"*) ;;
*) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig"
ac_unrecognized_sep=', ';;
esac
eval with_$ac_useropt=\$ac_optarg ;;
-without-* | --without-*)
ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'`
# Reject names that are not valid shell variable names.
expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
as_fn_error $? "invalid package name: $ac_useropt"
ac_useropt_orig=$ac_useropt
ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
case $ac_user_opts in
*"
"with_$ac_useropt"
"*) ;;
*) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--without-$ac_useropt_orig"
ac_unrecognized_sep=', ';;
esac
eval with_$ac_useropt=no ;;
--x)
# Obsolete; use --with-x.
with_x=yes ;;
-x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
| --x-incl | --x-inc | --x-in | --x-i)
ac_prev=x_includes ;;
-x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
| --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
x_includes=$ac_optarg ;;
-x-libraries | --x-libraries | --x-librarie | --x-librari \
| --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
ac_prev=x_libraries ;;
-x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
| --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
x_libraries=$ac_optarg ;;
-*) as_fn_error $? "unrecognized option: \`$ac_option'
Try \`$0 --help' for more information"
;;
*=*)
ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='`
# Reject names that are not valid shell variable names.
case $ac_envvar in #(
'' | [0-9]* | *[!_$as_cr_alnum]* )
as_fn_error $? "invalid variable name: \`$ac_envvar'" ;;
esac
eval $ac_envvar=\$ac_optarg
export $ac_envvar ;;
*)
# FIXME: should be removed in autoconf 3.0.
$as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2
expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
$as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2
: "${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}"
;;
esac
done
if test -n "$ac_prev"; then
ac_option=--`echo $ac_prev | sed 's/_/-/g'`
as_fn_error $? "missing argument to $ac_option"
fi
if test -n "$ac_unrecognized_opts"; then
case $enable_option_checking in
no) ;;
fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;;
*) $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;;
esac
fi
# Check all directory arguments for consistency.
for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \
datadir sysconfdir sharedstatedir localstatedir includedir \
oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
libdir localedir mandir
do
eval ac_val=\$$ac_var
# Remove trailing slashes.
case $ac_val in
*/ )
ac_val=`expr "X$ac_val" : 'X\(.*[^/]\)' \| "X$ac_val" : 'X\(.*\)'`
eval $ac_var=\$ac_val;;
esac
# Be sure to have absolute directory names.
case $ac_val in
[\\/$]* | ?:[\\/]* ) continue;;
NONE | '' ) case $ac_var in *prefix ) continue;; esac;;
esac
as_fn_error $? "expected an absolute directory name for --$ac_var: $ac_val"
done
# There might be people who depend on the old broken behavior: `$host'
# used to hold the argument of --host etc.
# FIXME: To remove some day.
build=$build_alias
host=$host_alias
target=$target_alias
# FIXME: To remove some day.
if test "x$host_alias" != x; then
if test "x$build_alias" = x; then
cross_compiling=maybe
elif test "x$build_alias" != "x$host_alias"; then
cross_compiling=yes
fi
fi
ac_tool_prefix=
test -n "$host_alias" && ac_tool_prefix=$host_alias-
test "$silent" = yes && exec 6>/dev/null
ac_pwd=`pwd` && test -n "$ac_pwd" &&
ac_ls_di=`ls -di .` &&
ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` ||
as_fn_error $? "working directory cannot be determined"
test "X$ac_ls_di" = "X$ac_pwd_ls_di" ||
as_fn_error $? "pwd does not report name of working directory"
# Find the source files, if location was not specified.
if test -z "$srcdir"; then
ac_srcdir_defaulted=yes
# Try the directory containing this script, then the parent directory.
ac_confdir=`$as_dirname -- "$as_myself" ||
$as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
X"$as_myself" : 'X\(//\)[^/]' \| \
X"$as_myself" : 'X\(//\)$' \| \
X"$as_myself" : 'X\(/\)' \| . 2>/dev/null ||
$as_echo X"$as_myself" |
sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
s//\1/
q
}
/^X\(\/\/\)[^/].*/{
s//\1/
q
}
/^X\(\/\/\)$/{
s//\1/
q
}
/^X\(\/\).*/{
s//\1/
q
}
s/.*/./; q'`
srcdir=$ac_confdir
if test ! -r "$srcdir/$ac_unique_file"; then
srcdir=..
fi
else
ac_srcdir_defaulted=no
fi
if test ! -r "$srcdir/$ac_unique_file"; then
test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .."
as_fn_error $? "cannot find sources ($ac_unique_file) in $srcdir"
fi
ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work"
ac_abs_confdir=`(
cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error $? "$ac_msg"
pwd)`
# When building in place, set srcdir=.
if test "$ac_abs_confdir" = "$ac_pwd"; then
srcdir=.
fi
# Remove unnecessary trailing slashes from srcdir.
# Double slashes in file names in object file debugging info
# mess up M-x gdb in Emacs.
case $srcdir in
*/) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;;
esac
for ac_var in $ac_precious_vars; do
eval ac_env_${ac_var}_set=\${${ac_var}+set}
eval ac_env_${ac_var}_value=\$${ac_var}
eval ac_cv_env_${ac_var}_set=\${${ac_var}+set}
eval ac_cv_env_${ac_var}_value=\$${ac_var}
done
#
# Report the --help message.
#
if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
\`configure' configures Caspar 20170830 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
To assign environment variables (e.g., CC, CFLAGS...), specify them as
VAR=VALUE. See below for descriptions of some of the useful variables.
Defaults for the options are specified in brackets.
Configuration:
-h, --help display this help and exit
--help=short display options specific to this package
--help=recursive display the short help of all the included packages
-V, --version display version information and exit
-q, --quiet, --silent do not print \`checking ...' messages
--cache-file=FILE cache test results in FILE [disabled]
-C, --config-cache alias for \`--cache-file=config.cache'
-n, --no-create do not create output files
--srcdir=DIR find the sources in DIR [configure dir or \`..']
Installation directories:
--prefix=PREFIX install architecture-independent files in PREFIX
[$ac_default_prefix]
--exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
[PREFIX]
By default, \`make install' will install all the files in
\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify
an installation prefix other than \`$ac_default_prefix' using \`--prefix',
for instance \`--prefix=\$HOME'.
For better control, use the options below.
Fine tuning of the installation directories:
--bindir=DIR user executables [EPREFIX/bin]
--sbindir=DIR system admin executables [EPREFIX/sbin]
--libexecdir=DIR program executables [EPREFIX/libexec]
--sysconfdir=DIR read-only single-machine data [PREFIX/etc]
--sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
--localstatedir=DIR modifiable single-machine data [PREFIX/var]
--libdir=DIR object code libraries [EPREFIX/lib]
--includedir=DIR C header files [PREFIX/include]
--oldincludedir=DIR C header files for non-gcc [/usr/include]
--datarootdir=DIR read-only arch.-independent data root [PREFIX/share]
--datadir=DIR read-only architecture-independent data [DATAROOTDIR]
--infodir=DIR info documentation [DATAROOTDIR/info]
--localedir=DIR locale-dependent data [DATAROOTDIR/locale]
--mandir=DIR man documentation [DATAROOTDIR/man]
--docdir=DIR documentation root [DATAROOTDIR/doc/caspar]
--htmldir=DIR html documentation [DOCDIR]
--dvidir=DIR dvi documentation [DOCDIR]
--pdfdir=DIR pdf documentation [DOCDIR]
--psdir=DIR ps documentation [DOCDIR]
_ACEOF
cat <<\_ACEOF
Program names:
--program-prefix=PREFIX prepend PREFIX to installed program names
--program-suffix=SUFFIX append SUFFIX to installed program names
--program-transform-name=PROGRAM run sed PROGRAM on installed program names
_ACEOF
fi
if test -n "$ac_init_help"; then
case $ac_init_help in
short | recursive ) echo "Configuration of Caspar 20170830:";;
esac
cat <<\_ACEOF
Optional Features:
--disable-option-checking ignore unrecognized --enable/--with options
--disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
--enable-FEATURE[=ARG] include FEATURE [ARG=yes]
--enable-silent-rules less verbose build output (undo: "make V=1")
--disable-silent-rules verbose build output (undo: "make V=0")
Report bugs to .
_ACEOF
ac_status=$?
fi
if test "$ac_init_help" = "recursive"; then
# If there are subdirs, report their specific --help.
for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue
test -d "$ac_dir" ||
{ cd "$srcdir" && ac_pwd=`pwd` && srcdir=. && test -d "$ac_dir"; } ||
continue
ac_builddir=.
case "$ac_dir" in
.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
*)
ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
# A ".." for each directory in $ac_dir_suffix.
ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
case $ac_top_builddir_sub in
"") ac_top_builddir_sub=. ac_top_build_prefix= ;;
*) ac_top_build_prefix=$ac_top_builddir_sub/ ;;
esac ;;
esac
ac_abs_top_builddir=$ac_pwd
ac_abs_builddir=$ac_pwd$ac_dir_suffix
# for backward compatibility:
ac_top_builddir=$ac_top_build_prefix
case $srcdir in
.) # We are building in place.
ac_srcdir=.
ac_top_srcdir=$ac_top_builddir_sub
ac_abs_top_srcdir=$ac_pwd ;;
[\\/]* | ?:[\\/]* ) # Absolute name.
ac_srcdir=$srcdir$ac_dir_suffix;
ac_top_srcdir=$srcdir
ac_abs_top_srcdir=$srcdir ;;
*) # Relative name.
ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix
ac_top_srcdir=$ac_top_build_prefix$srcdir
ac_abs_top_srcdir=$ac_pwd/$srcdir ;;
esac
ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
cd "$ac_dir" || { ac_status=$?; continue; }
# Check for guested configure.
if test -f "$ac_srcdir/configure.gnu"; then
echo &&
$SHELL "$ac_srcdir/configure.gnu" --help=recursive
elif test -f "$ac_srcdir/configure"; then
echo &&
$SHELL "$ac_srcdir/configure" --help=recursive
else
$as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
fi || ac_status=$?
cd "$ac_pwd" || { ac_status=$?; break; }
done
fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
Caspar configure 20170830
generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc.
This configure script is free software; the Free Software Foundation
gives unlimited permission to copy, distribute and modify it.
Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2009, 2010 Joost van Baal
Copyright (C) 2012, 2013, 2014 Joost van Baal-Ilić
_ACEOF
exit
fi
## ------------------------ ##
## Autoconf initialization. ##
## ------------------------ ##
cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
It was created by Caspar $as_me 20170830, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@
_ACEOF
exec 5>>config.log
{
cat <<_ASUNAME
## --------- ##
## Platform. ##
## --------- ##
hostname = `(hostname || uname -n) 2>/dev/null | sed 1q`
uname -m = `(uname -m) 2>/dev/null || echo unknown`
uname -r = `(uname -r) 2>/dev/null || echo unknown`
uname -s = `(uname -s) 2>/dev/null || echo unknown`
uname -v = `(uname -v) 2>/dev/null || echo unknown`
/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown`
/bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown`
/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown`
/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown`
/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown`
/usr/bin/hostinfo = `(/usr/bin/hostinfo) 2>/dev/null || echo unknown`
/bin/machine = `(/bin/machine) 2>/dev/null || echo unknown`
/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown`
/bin/universe = `(/bin/universe) 2>/dev/null || echo unknown`
_ASUNAME
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
$as_echo "PATH: $as_dir"
done
IFS=$as_save_IFS
} >&5
cat >&5 <<_ACEOF
## ----------- ##
## Core tests. ##
## ----------- ##
_ACEOF
# Keep a trace of the command line.
# Strip out --no-create and --no-recursion so they do not pile up.
# Strip out --silent because we don't want to record it for future runs.
# Also quote any args containing shell meta-characters.
# Make two passes to allow for proper duplicate-argument suppression.
ac_configure_args=
ac_configure_args0=
ac_configure_args1=
ac_must_keep_next=false
for ac_pass in 1 2
do
for ac_arg
do
case $ac_arg in
-no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;;
-q | -quiet | --quiet | --quie | --qui | --qu | --q \
| -silent | --silent | --silen | --sile | --sil)
continue ;;
*\'*)
ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
esac
case $ac_pass in
1) as_fn_append ac_configure_args0 " '$ac_arg'" ;;
2)
as_fn_append ac_configure_args1 " '$ac_arg'"
if test $ac_must_keep_next = true; then
ac_must_keep_next=false # Got value, back to normal.
else
case $ac_arg in
*=* | --config-cache | -C | -disable-* | --disable-* \
| -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \
| -q | -quiet | --q* | -silent | --sil* | -v | -verb* \
| -with-* | --with-* | -without-* | --without-* | --x)
case "$ac_configure_args0 " in
"$ac_configure_args1"*" '$ac_arg' "* ) continue ;;
esac
;;
-* ) ac_must_keep_next=true ;;
esac
fi
as_fn_append ac_configure_args " '$ac_arg'"
;;
esac
done
done
{ ac_configure_args0=; unset ac_configure_args0;}
{ ac_configure_args1=; unset ac_configure_args1;}
# When interrupted or exit'd, cleanup temporary files, and complete
# config.log. We remove comments because anyway the quotes in there
# would cause problems or look ugly.
# WARNING: Use '\'' to represent an apostrophe within the trap.
# WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug.
trap 'exit_status=$?
# Save into config.log some information that might help in debugging.
{
echo
$as_echo "## ---------------- ##
## Cache variables. ##
## ---------------- ##"
echo
# The following way of writing the cache mishandles newlines in values,
(
for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do
eval ac_val=\$$ac_var
case $ac_val in #(
*${as_nl}*)
case $ac_var in #(
*_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
esac
case $ac_var in #(
_ | IFS | as_nl) ;; #(
BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
*) { eval $ac_var=; unset $ac_var;} ;;
esac ;;
esac
done
(set) 2>&1 |
case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #(
*${as_nl}ac_space=\ *)
sed -n \
"s/'\''/'\''\\\\'\'''\''/g;
s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p"
;; #(
*)
sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
;;
esac |
sort
)
echo
$as_echo "## ----------------- ##
## Output variables. ##
## ----------------- ##"
echo
for ac_var in $ac_subst_vars
do
eval ac_val=\$$ac_var
case $ac_val in
*\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
esac
$as_echo "$ac_var='\''$ac_val'\''"
done | sort
echo
if test -n "$ac_subst_files"; then
$as_echo "## ------------------- ##
## File substitutions. ##
## ------------------- ##"
echo
for ac_var in $ac_subst_files
do
eval ac_val=\$$ac_var
case $ac_val in
*\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
esac
$as_echo "$ac_var='\''$ac_val'\''"
done | sort
echo
fi
if test -s confdefs.h; then
$as_echo "## ----------- ##
## confdefs.h. ##
## ----------- ##"
echo
cat confdefs.h
echo
fi
test "$ac_signal" != 0 &&
$as_echo "$as_me: caught signal $ac_signal"
$as_echo "$as_me: exit $exit_status"
} >&5
rm -f core *.core core.conftest.* &&
rm -f -r conftest* confdefs* conf$$* $ac_clean_files &&
exit $exit_status
' 0
for ac_signal in 1 2 13 15; do
trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal
done
ac_signal=0
# confdefs.h avoids OS command line length limits that DEFS can exceed.
rm -f -r conftest* confdefs.h
$as_echo "/* confdefs.h */" > confdefs.h
# Predefined preprocessor variables.
cat >>confdefs.h <<_ACEOF
#define PACKAGE_NAME "$PACKAGE_NAME"
_ACEOF
cat >>confdefs.h <<_ACEOF
#define PACKAGE_TARNAME "$PACKAGE_TARNAME"
_ACEOF
cat >>confdefs.h <<_ACEOF
#define PACKAGE_VERSION "$PACKAGE_VERSION"
_ACEOF
cat >>confdefs.h <<_ACEOF
#define PACKAGE_STRING "$PACKAGE_STRING"
_ACEOF
cat >>confdefs.h <<_ACEOF
#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
_ACEOF
cat >>confdefs.h <<_ACEOF
#define PACKAGE_URL "$PACKAGE_URL"
_ACEOF
# Let the site file select an alternate cache file if it wants to.
# Prefer an explicitly selected file to automatically selected ones.
ac_site_file1=NONE
ac_site_file2=NONE
if test -n "$CONFIG_SITE"; then
# We do not want a PATH search for config.site.
case $CONFIG_SITE in #((
-*) ac_site_file1=./$CONFIG_SITE;;
*/*) ac_site_file1=$CONFIG_SITE;;
*) ac_site_file1=./$CONFIG_SITE;;
esac
elif test "x$prefix" != xNONE; then
ac_site_file1=$prefix/share/config.site
ac_site_file2=$prefix/etc/config.site
else
ac_site_file1=$ac_default_prefix/share/config.site
ac_site_file2=$ac_default_prefix/etc/config.site
fi
for ac_site_file in "$ac_site_file1" "$ac_site_file2"
do
test "x$ac_site_file" = xNONE && continue
if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5
$as_echo "$as_me: loading site script $ac_site_file" >&6;}
sed 's/^/| /' "$ac_site_file" >&5
. "$ac_site_file" \
|| { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
as_fn_error $? "failed to load site script $ac_site_file
See \`config.log' for more details" "$LINENO" 5; }
fi
done
if test -r "$cache_file"; then
# Some versions of bash will fail to source /dev/null (special files
# actually), so we avoid doing that. DJGPP emulates it as a regular file.
if test /dev/null != "$cache_file" && test -f "$cache_file"; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5
$as_echo "$as_me: loading cache $cache_file" >&6;}
case $cache_file in
[\\/]* | ?:[\\/]* ) . "$cache_file";;
*) . "./$cache_file";;
esac
fi
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5
$as_echo "$as_me: creating cache $cache_file" >&6;}
>$cache_file
fi
# Check that the precious variables saved in the cache have kept the same
# value.
ac_cache_corrupted=false
for ac_var in $ac_precious_vars; do
eval ac_old_set=\$ac_cv_env_${ac_var}_set
eval ac_new_set=\$ac_env_${ac_var}_set
eval ac_old_val=\$ac_cv_env_${ac_var}_value
eval ac_new_val=\$ac_env_${ac_var}_value
case $ac_old_set,$ac_new_set in
set,)
{ $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
$as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
ac_cache_corrupted=: ;;
,set)
{ $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5
$as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
ac_cache_corrupted=: ;;
,);;
*)
if test "x$ac_old_val" != "x$ac_new_val"; then
# differences in whitespace do not lead to failure.
ac_old_val_w=`echo x $ac_old_val`
ac_new_val_w=`echo x $ac_new_val`
if test "$ac_old_val_w" != "$ac_new_val_w"; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5
$as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
ac_cache_corrupted=:
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5
$as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;}
eval $ac_var=\$ac_old_val
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: former value: \`$ac_old_val'" >&5
$as_echo "$as_me: former value: \`$ac_old_val'" >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: current value: \`$ac_new_val'" >&5
$as_echo "$as_me: current value: \`$ac_new_val'" >&2;}
fi;;
esac
# Pass precious variables to config.status.
if test "$ac_new_set" = set; then
case $ac_new_val in
*\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
*) ac_arg=$ac_var=$ac_new_val ;;
esac
case " $ac_configure_args " in
*" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy.
*) as_fn_append ac_configure_args " '$ac_arg'" ;;
esac
fi
done
if $ac_cache_corrupted; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5
$as_echo "$as_me: error: changes in the environment can compromise the build" >&2;}
as_fn_error $? "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5
fi
## -------------------- ##
## Main body of script. ##
## -------------------- ##
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
ac_compiler_gnu=$ac_cv_c_compiler_gnu
am__api_version='1.14'
ac_aux_dir=
for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do
if test -f "$ac_dir/install-sh"; then
ac_aux_dir=$ac_dir
ac_install_sh="$ac_aux_dir/install-sh -c"
break
elif test -f "$ac_dir/install.sh"; then
ac_aux_dir=$ac_dir
ac_install_sh="$ac_aux_dir/install.sh -c"
break
elif test -f "$ac_dir/shtool"; then
ac_aux_dir=$ac_dir
ac_install_sh="$ac_aux_dir/shtool install -c"
break
fi
done
if test -z "$ac_aux_dir"; then
as_fn_error $? "cannot find install-sh, install.sh, or shtool in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" "$LINENO" 5
fi
# These three variables are undocumented and unsupported,
# and are intended to be withdrawn in a future Autoconf release.
# They can cause serious problems if a builder's source tree is in a directory
# whose full name contains unusual characters.
ac_config_guess="$SHELL $ac_aux_dir/config.guess" # Please don't use this var.
ac_config_sub="$SHELL $ac_aux_dir/config.sub" # Please don't use this var.
ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var.
# Find a good install program. We prefer a C program (faster),
# so one script is as good as another. But avoid the broken or
# incompatible versions:
# SysV /etc/install, /usr/sbin/install
# SunOS /usr/etc/install
# IRIX /sbin/install
# AIX /bin/install
# AmigaOS /C/install, which installs bootblocks on floppy discs
# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
# AFS /usr/afsws/bin/install, which mishandles nonexistent args
# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
# OS/2's system install, which has a completely different semantic
# ./install, which can be erroneously created by make from ./install.sh.
# Reject install programs that cannot install multiple files.
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5
$as_echo_n "checking for a BSD-compatible install... " >&6; }
if test -z "$INSTALL"; then
if ${ac_cv_path_install+:} false; then :
$as_echo_n "(cached) " >&6
else
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
# Account for people who put trailing slashes in PATH elements.
case $as_dir/ in #((
./ | .// | /[cC]/* | \
/etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \
/usr/ucb/* ) ;;
*)
# OSF1 and SCO ODT 3.0 have their own names for install.
# Don't use installbsd from OSF since it installs stuff as root
# by default.
for ac_prog in ginstall scoinst install; do
for ac_exec_ext in '' $ac_executable_extensions; do
if as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
if test $ac_prog = install &&
grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
# AIX install. It has an incompatible calling convention.
:
elif test $ac_prog = install &&
grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
# program-specific install script used by HP pwplus--don't use.
:
else
rm -rf conftest.one conftest.two conftest.dir
echo one > conftest.one
echo two > conftest.two
mkdir conftest.dir
if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" &&
test -s conftest.one && test -s conftest.two &&
test -s conftest.dir/conftest.one &&
test -s conftest.dir/conftest.two
then
ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
break 3
fi
fi
fi
done
done
;;
esac
done
IFS=$as_save_IFS
rm -rf conftest.one conftest.two conftest.dir
fi
if test "${ac_cv_path_install+set}" = set; then
INSTALL=$ac_cv_path_install
else
# As a last resort, use the slow shell script. Don't cache a
# value for INSTALL within a source directory, because that will
# break other packages using the cache if that directory is
# removed, or if the value is a relative name.
INSTALL=$ac_install_sh
fi
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5
$as_echo "$INSTALL" >&6; }
# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
# It thinks the first close brace ends the variable substitution.
test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5
$as_echo_n "checking whether build environment is sane... " >&6; }
# Reject unsafe characters in $srcdir or the absolute working directory
# name. Accept space and tab only in the latter.
am_lf='
'
case `pwd` in
*[\\\"\#\$\&\'\`$am_lf]*)
as_fn_error $? "unsafe absolute working directory name" "$LINENO" 5;;
esac
case $srcdir in
*[\\\"\#\$\&\'\`$am_lf\ \ ]*)
as_fn_error $? "unsafe srcdir value: '$srcdir'" "$LINENO" 5;;
esac
# Do 'set' in a subshell so we don't clobber the current shell's
# arguments. Must try -L first in case configure is actually a
# symlink; some systems play weird games with the mod time of symlinks
# (eg FreeBSD returns the mod time of the symlink's containing
# directory).
if (
am_has_slept=no
for am_try in 1 2; do
echo "timestamp, slept: $am_has_slept" > conftest.file
set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
if test "$*" = "X"; then
# -L didn't work.
set X `ls -t "$srcdir/configure" conftest.file`
fi
if test "$*" != "X $srcdir/configure conftest.file" \
&& test "$*" != "X conftest.file $srcdir/configure"; then
# If neither matched, then we have a broken ls. This can happen
# if, for instance, CONFIG_SHELL is bash and it inherits a
# broken ls alias from the environment. This has actually
# happened. Such a system could not be considered "sane".
as_fn_error $? "ls -t appears to fail. Make sure there is not a broken
alias in your environment" "$LINENO" 5
fi
if test "$2" = conftest.file || test $am_try -eq 2; then
break
fi
# Just in case.
sleep 1
am_has_slept=yes
done
test "$2" = conftest.file
)
then
# Ok.
:
else
as_fn_error $? "newly created file is older than distributed files!
Check your system clock" "$LINENO" 5
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
# If we didn't sleep, we still need to ensure time stamps of config.status and
# generated files are strictly newer.
am_sleep_pid=
if grep 'slept: no' conftest.file >/dev/null 2>&1; then
( sleep 1 ) &
am_sleep_pid=$!
fi
rm -f conftest.file
test "$program_prefix" != NONE &&
program_transform_name="s&^&$program_prefix&;$program_transform_name"
# Use a double $ so make ignores it.
test "$program_suffix" != NONE &&
program_transform_name="s&\$&$program_suffix&;$program_transform_name"
# Double any \ or $.
# By default was `s,x,x', remove it if useless.
ac_script='s/[\\$]/&&/g;s/;s,x,x,$//'
program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"`
# Expand $ac_aux_dir to an absolute path.
am_aux_dir=`cd "$ac_aux_dir" && pwd`
if test x"${MISSING+set}" != xset; then
case $am_aux_dir in
*\ * | *\ *)
MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
*)
MISSING="\${SHELL} $am_aux_dir/missing" ;;
esac
fi
# Use eval to expand $SHELL
if eval "$MISSING --is-lightweight"; then
am_missing_run="$MISSING "
else
am_missing_run=
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: 'missing' script is too old or missing" >&5
$as_echo "$as_me: WARNING: 'missing' script is too old or missing" >&2;}
fi
if test x"${install_sh}" != xset; then
case $am_aux_dir in
*\ * | *\ *)
install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
*)
install_sh="\${SHELL} $am_aux_dir/install-sh"
esac
fi
# Installed binaries are usually stripped using 'strip' when the user
# run "make install-strip". However 'strip' might not be the right
# tool to use in cross-compilation environments, therefore Automake
# will honor the 'STRIP' environment variable to overrule this program.
if test "$cross_compiling" != no; then
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
set dummy ${ac_tool_prefix}strip; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
if ${ac_cv_prog_STRIP+:} false; then :
$as_echo_n "(cached) " >&6
else
if test -n "$STRIP"; then
ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
else
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_STRIP="${ac_tool_prefix}strip"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
done
IFS=$as_save_IFS
fi
fi
STRIP=$ac_cv_prog_STRIP
if test -n "$STRIP"; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5
$as_echo "$STRIP" >&6; }
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
fi
fi
if test -z "$ac_cv_prog_STRIP"; then
ac_ct_STRIP=$STRIP
# Extract the first word of "strip", so it can be a program name with args.
set dummy strip; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
if ${ac_cv_prog_ac_ct_STRIP+:} false; then :
$as_echo_n "(cached) " >&6
else
if test -n "$ac_ct_STRIP"; then
ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.
else
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_ac_ct_STRIP="strip"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
done
IFS=$as_save_IFS
fi
fi
ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP
if test -n "$ac_ct_STRIP"; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5
$as_echo "$ac_ct_STRIP" >&6; }
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
fi
if test "x$ac_ct_STRIP" = x; then
STRIP=":"
else
case $cross_compiling:$ac_tool_warned in
yes:)
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
ac_tool_warned=yes ;;
esac
STRIP=$ac_ct_STRIP
fi
else
STRIP="$ac_cv_prog_STRIP"
fi
fi
INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a thread-safe mkdir -p" >&5
$as_echo_n "checking for a thread-safe mkdir -p... " >&6; }
if test -z "$MKDIR_P"; then
if ${ac_cv_path_mkdir+:} false; then :
$as_echo_n "(cached) " >&6
else
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH$PATH_SEPARATOR/opt/sfw/bin
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_prog in mkdir gmkdir; do
for ac_exec_ext in '' $ac_executable_extensions; do
as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext" || continue
case `"$as_dir/$ac_prog$ac_exec_ext" --version 2>&1` in #(
'mkdir (GNU coreutils) '* | \
'mkdir (coreutils) '* | \
'mkdir (fileutils) '4.1*)
ac_cv_path_mkdir=$as_dir/$ac_prog$ac_exec_ext
break 3;;
esac
done
done
done
IFS=$as_save_IFS
fi
test -d ./--version && rmdir ./--version
if test "${ac_cv_path_mkdir+set}" = set; then
MKDIR_P="$ac_cv_path_mkdir -p"
else
# As a last resort, use the slow shell script. Don't cache a
# value for MKDIR_P within a source directory, because that will
# break other packages using the cache if that directory is
# removed, or if the value is a relative name.
MKDIR_P="$ac_install_sh -d"
fi
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5
$as_echo "$MKDIR_P" >&6; }
for ac_prog in gawk mawk nawk awk
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
if ${ac_cv_prog_AWK+:} false; then :
$as_echo_n "(cached) " >&6
else
if test -n "$AWK"; then
ac_cv_prog_AWK="$AWK" # Let the user override the test.
else
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_AWK="$ac_prog"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
done
IFS=$as_save_IFS
fi
fi
AWK=$ac_cv_prog_AWK
if test -n "$AWK"; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5
$as_echo "$AWK" >&6; }
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
fi
test -n "$AWK" && break
done
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5
$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; }
set x ${MAKE-make}
ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then :
$as_echo_n "(cached) " >&6
else
cat >conftest.make <<\_ACEOF
SHELL = /bin/sh
all:
@echo '@@@%%%=$(MAKE)=@@@%%%'
_ACEOF
# GNU make sometimes prints "make[1]: Entering ...", which would confuse us.
case `${MAKE-make} -f conftest.make 2>/dev/null` in
*@@@%%%=?*=@@@%%%*)
eval ac_cv_prog_make_${ac_make}_set=yes;;
*)
eval ac_cv_prog_make_${ac_make}_set=no;;
esac
rm -f conftest.make
fi
if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
SET_MAKE=
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
SET_MAKE="MAKE=${MAKE-make}"
fi
rm -rf .tst 2>/dev/null
mkdir .tst 2>/dev/null
if test -d .tst; then
am__leading_dot=.
else
am__leading_dot=_
fi
rmdir .tst 2>/dev/null
# Check whether --enable-silent-rules was given.
if test "${enable_silent_rules+set}" = set; then :
enableval=$enable_silent_rules;
fi
case $enable_silent_rules in # (((
yes) AM_DEFAULT_VERBOSITY=0;;
no) AM_DEFAULT_VERBOSITY=1;;
*) AM_DEFAULT_VERBOSITY=1;;
esac
am_make=${MAKE-make}
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $am_make supports nested variables" >&5
$as_echo_n "checking whether $am_make supports nested variables... " >&6; }
if ${am_cv_make_support_nested_variables+:} false; then :
$as_echo_n "(cached) " >&6
else
if $as_echo 'TRUE=$(BAR$(V))
BAR0=false
BAR1=true
V=1
am__doit:
@$(TRUE)
.PHONY: am__doit' | $am_make -f - >/dev/null 2>&1; then
am_cv_make_support_nested_variables=yes
else
am_cv_make_support_nested_variables=no
fi
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_make_support_nested_variables" >&5
$as_echo "$am_cv_make_support_nested_variables" >&6; }
if test $am_cv_make_support_nested_variables = yes; then
AM_V='$(V)'
AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)'
else
AM_V=$AM_DEFAULT_VERBOSITY
AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY
fi
AM_BACKSLASH='\'
if test "`cd $srcdir && pwd`" != "`pwd`"; then
# Use -I$(srcdir) only when $(srcdir) != ., so that make's output
# is not polluted with repeated "-I."
am__isrc=' -I$(srcdir)'
# test to see if srcdir already configured
if test -f $srcdir/config.status; then
as_fn_error $? "source directory already configured; run \"make distclean\" there first" "$LINENO" 5
fi
fi
# test whether we have cygpath
if test -z "$CYGPATH_W"; then
if (cygpath --version) >/dev/null 2>/dev/null; then
CYGPATH_W='cygpath -w'
else
CYGPATH_W=echo
fi
fi
# Define the identity of the package.
PACKAGE='caspar'
VERSION='20170830'
cat >>confdefs.h <<_ACEOF
#define PACKAGE "$PACKAGE"
_ACEOF
cat >>confdefs.h <<_ACEOF
#define VERSION "$VERSION"
_ACEOF
# Some tools Automake needs.
ACLOCAL=${ACLOCAL-"${am_missing_run}aclocal-${am__api_version}"}
AUTOCONF=${AUTOCONF-"${am_missing_run}autoconf"}
AUTOMAKE=${AUTOMAKE-"${am_missing_run}automake-${am__api_version}"}
AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"}
MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"}
# For better backward compatibility. To be removed once Automake 1.9.x
# dies out for good. For more background, see:
#
#
mkdir_p='$(MKDIR_P)'
# We need awk for the "check" target. The system "awk" is bad on
# some platforms.
# Always define AMTAR for backward compatibility. Yes, it's still used
# in the wild :-( We should find a proper way to deprecate it ...
AMTAR='$${TAR-tar}'
# We'll loop over all known methods to create a tar archive until one works.
_am_tools='gnutar pax cpio none'
am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'
# POSIX will say in a future version that running "rm -f" with no argument
# is OK; and we want to be able to make that assumption in our Makefile
# recipes. So use an aggressive probe to check that the usage we want is
# actually supported "in the wild" to an acceptable degree.
# See automake bug#10828.
# To make any issue more visible, cause the running configure to be aborted
# by default if the 'rm' program in use doesn't match our expectations; the
# user can still override this though.
if rm -f && rm -fr && rm -rf; then : OK; else
cat >&2 <<'END'
Oops!
Your 'rm' program seems unable to run without file operands specified
on the command line, even when the '-f' option is present. This is contrary
to the behaviour of most rm programs out there, and not conforming with
the upcoming POSIX standard:
Please tell bug-automake@gnu.org about your system, including the value
of your $PATH and any error possibly output before this message. This
can help us improve future automake versions.
END
if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then
echo 'Configuration will proceed anyway, since you have set the' >&2
echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2
echo >&2
else
cat >&2 <<'END'
Aborting the configuration process, to ensure you take notice of the issue.
You can download and install GNU coreutils to get an 'rm' implementation
that behaves properly: .
If you want to complete the configuration process using your problematic
'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM
to "yes", and re-run configure.
END
as_fn_error $? "Your 'rm' program is bad, sorry." "$LINENO" 5
fi
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ln -s works" >&5
$as_echo_n "checking whether ln -s works... " >&6; }
LN_S=$as_ln_s
if test "$LN_S" = "ln -s"; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no, using $LN_S" >&5
$as_echo "no, using $LN_S" >&6; }
fi
ac_config_files="$ac_config_files Makefile doc/Makefile mk/Makefile sgml/Makefile script/Makefile"
cat >confcache <<\_ACEOF
# This file is a shell script that caches the results of configure
# tests run on this system so they can be shared between configure
# scripts and configure runs, see configure's option --config-cache.
# It is not useful on other systems. If it contains results you don't
# want to keep, you may remove or edit it.
#
# config.status only pays attention to the cache file if you give it
# the --recheck option to rerun configure.
#
# `ac_cv_env_foo' variables (set or unset) will be overridden when
# loading this file, other *unset* `ac_cv_foo' will be assigned the
# following values.
_ACEOF
# The following way of writing the cache mishandles newlines in values,
# but we know of no workaround that is simple, portable, and efficient.
# So, we kill variables containing newlines.
# Ultrix sh set writes to stderr and can't be redirected directly,
# and sets the high bit in the cache file unless we assign to the vars.
(
for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do
eval ac_val=\$$ac_var
case $ac_val in #(
*${as_nl}*)
case $ac_var in #(
*_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
esac
case $ac_var in #(
_ | IFS | as_nl) ;; #(
BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
*) { eval $ac_var=; unset $ac_var;} ;;
esac ;;
esac
done
(set) 2>&1 |
case $as_nl`(ac_space=' '; set) 2>&1` in #(
*${as_nl}ac_space=\ *)
# `set' does not quote correctly, so add quotes: double-quote
# substitution turns \\\\ into \\, and sed turns \\ into \.
sed -n \
"s/'/'\\\\''/g;
s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
;; #(
*)
# `set' quotes correctly as required by POSIX, so do not add quotes.
sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
;;
esac |
sort
) |
sed '
/^ac_cv_env_/b end
t clear
:clear
s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
t end
s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
:end' >>confcache
if diff "$cache_file" confcache >/dev/null 2>&1; then :; else
if test -w "$cache_file"; then
if test "x$cache_file" != "x/dev/null"; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5
$as_echo "$as_me: updating cache $cache_file" >&6;}
if test ! -f "$cache_file" || test -h "$cache_file"; then
cat confcache >"$cache_file"
else
case $cache_file in #(
*/* | ?:*)
mv -f confcache "$cache_file"$$ &&
mv -f "$cache_file"$$ "$cache_file" ;; #(
*)
mv -f confcache "$cache_file" ;;
esac
fi
fi
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5
$as_echo "$as_me: not updating unwritable cache $cache_file" >&6;}
fi
fi
rm -f confcache
test "x$prefix" = xNONE && prefix=$ac_default_prefix
# Let make expand exec_prefix.
test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
# Transform confdefs.h into DEFS.
# Protect against shell expansion while executing Makefile rules.
# Protect against Makefile macro expansion.
#
# If the first sed substitution is executed (which looks for macros that
# take arguments), then branch to the quote section. Otherwise,
# look for a macro that doesn't take arguments.
ac_script='
:mline
/\\$/{
N
s,\\\n,,
b mline
}
t clear
:clear
s/^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*([^)]*)\)[ ]*\(.*\)/-D\1=\2/g
t quote
s/^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\)/-D\1=\2/g
t quote
b any
:quote
s/[ `~#$^&*(){}\\|;'\''"<>?]/\\&/g
s/\[/\\&/g
s/\]/\\&/g
s/\$/$$/g
H
:any
${
g
s/^\n//
s/\n/ /g
p
}
'
DEFS=`sed -n "$ac_script" confdefs.h`
ac_libobjs=
ac_ltlibobjs=
U=
for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue
# 1. Remove the extension, and $U if already installed.
ac_script='s/\$U\././;s/\.o$//;s/\.obj$//'
ac_i=`$as_echo "$ac_i" | sed "$ac_script"`
# 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR
# will be set to the directory where LIBOBJS objects are built.
as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext"
as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo'
done
LIBOBJS=$ac_libobjs
LTLIBOBJS=$ac_ltlibobjs
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking that generated files are newer than configure" >&5
$as_echo_n "checking that generated files are newer than configure... " >&6; }
if test -n "$am_sleep_pid"; then
# Hide warnings about reused PIDs.
wait $am_sleep_pid 2>/dev/null
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: done" >&5
$as_echo "done" >&6; }
: "${CONFIG_STATUS=./config.status}"
ac_write_fail=0
ac_clean_files_save=$ac_clean_files
ac_clean_files="$ac_clean_files $CONFIG_STATUS"
{ $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5
$as_echo "$as_me: creating $CONFIG_STATUS" >&6;}
as_write_fail=0
cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1
#! $SHELL
# Generated by $as_me.
# Run this file to recreate the current configuration.
# Compiler output produced by configure, useful for debugging
# configure, is in config.log if it exists.
debug=false
ac_cs_recheck=false
ac_cs_silent=false
SHELL=\${CONFIG_SHELL-$SHELL}
export SHELL
_ASEOF
cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1
## -------------------- ##
## M4sh Initialization. ##
## -------------------- ##
# Be more Bourne compatible
DUALCASE=1; export DUALCASE # for MKS sh
if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
emulate sh
NULLCMD=:
# Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
# is contrary to our usage. Disable this feature.
alias -g '${1+"$@"}'='"$@"'
setopt NO_GLOB_SUBST
else
case `(set -o) 2>/dev/null` in #(
*posix*) :
set -o posix ;; #(
*) :
;;
esac
fi
as_nl='
'
export as_nl
# Printing a long string crashes Solaris 7 /usr/bin/printf.
as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
# Prefer a ksh shell builtin over an external printf program on Solaris,
# but without wasting forks for bash or zsh.
if test -z "$BASH_VERSION$ZSH_VERSION" \
&& (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
as_echo='print -r --'
as_echo_n='print -rn --'
elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
as_echo='printf %s\n'
as_echo_n='printf %s'
else
if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
as_echo_n='/usr/ucb/echo -n'
else
as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
as_echo_n_body='eval
arg=$1;
case $arg in #(
*"$as_nl"*)
expr "X$arg" : "X\\(.*\\)$as_nl";
arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
esac;
expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
'
export as_echo_n_body
as_echo_n='sh -c $as_echo_n_body as_echo'
fi
export as_echo_body
as_echo='sh -c $as_echo_body as_echo'
fi
# The user is always right.
if test "${PATH_SEPARATOR+set}" != set; then
PATH_SEPARATOR=:
(PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
(PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
PATH_SEPARATOR=';'
}
fi
# IFS
# We need space, tab and new line, in precisely that order. Quoting is
# there to prevent editors from complaining about space-tab.
# (If _AS_PATH_WALK were called with IFS unset, it would disable word
# splitting by setting IFS to empty value.)
IFS=" "" $as_nl"
# Find who we are. Look in the path if we contain no directory separator.
as_myself=
case $0 in #((
*[\\/]* ) as_myself=$0 ;;
*) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
done
IFS=$as_save_IFS
;;
esac
# We did not find ourselves, most probably we were run as `sh COMMAND'
# in which case we are not to be found in the path.
if test "x$as_myself" = x; then
as_myself=$0
fi
if test ! -f "$as_myself"; then
$as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
exit 1
fi
# Unset variables that we do not need and which cause bugs (e.g. in
# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1"
# suppresses any "Segmentation fault" message there. '((' could
# trigger a bug in pdksh 5.2.14.
for as_var in BASH_ENV ENV MAIL MAILPATH
do eval test x\${$as_var+set} = xset \
&& ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
done
PS1='$ '
PS2='> '
PS4='+ '
# NLS nuisances.
LC_ALL=C
export LC_ALL
LANGUAGE=C
export LANGUAGE
# CDPATH.
(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
# as_fn_error STATUS ERROR [LINENO LOG_FD]
# ----------------------------------------
# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are
# provided, also output the error to LOG_FD, referencing LINENO. Then exit the
# script with STATUS, using 1 if that was 0.
as_fn_error ()
{
as_status=$1; test $as_status -eq 0 && as_status=1
if test "$4"; then
as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
$as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
fi
$as_echo "$as_me: error: $2" >&2
as_fn_exit $as_status
} # as_fn_error
# as_fn_set_status STATUS
# -----------------------
# Set $? to STATUS, without forking.
as_fn_set_status ()
{
return $1
} # as_fn_set_status
# as_fn_exit STATUS
# -----------------
# Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
as_fn_exit ()
{
set +e
as_fn_set_status $1
exit $1
} # as_fn_exit
# as_fn_unset VAR
# ---------------
# Portably unset VAR.
as_fn_unset ()
{
{ eval $1=; unset $1;}
}
as_unset=as_fn_unset
# as_fn_append VAR VALUE
# ----------------------
# Append the text in VALUE to the end of the definition contained in VAR. Take
# advantage of any shell optimizations that allow amortized linear growth over
# repeated appends, instead of the typical quadratic growth present in naive
# implementations.
if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
eval 'as_fn_append ()
{
eval $1+=\$2
}'
else
as_fn_append ()
{
eval $1=\$$1\$2
}
fi # as_fn_append
# as_fn_arith ARG...
# ------------------
# Perform arithmetic evaluation on the ARGs, and store the result in the
# global $as_val. Take advantage of shells that can avoid forks. The arguments
# must be portable across $(()) and expr.
if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
eval 'as_fn_arith ()
{
as_val=$(( $* ))
}'
else
as_fn_arith ()
{
as_val=`expr "$@" || test $? -eq 1`
}
fi # as_fn_arith
if expr a : '\(a\)' >/dev/null 2>&1 &&
test "X`expr 00001 : '.*\(...\)'`" = X001; then
as_expr=expr
else
as_expr=false
fi
if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
as_basename=basename
else
as_basename=false
fi
if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
as_dirname=dirname
else
as_dirname=false
fi
as_me=`$as_basename -- "$0" ||
$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
X"$0" : 'X\(//\)$' \| \
X"$0" : 'X\(/\)' \| . 2>/dev/null ||
$as_echo X/"$0" |
sed '/^.*\/\([^/][^/]*\)\/*$/{
s//\1/
q
}
/^X\/\(\/\/\)$/{
s//\1/
q
}
/^X\/\(\/\).*/{
s//\1/
q
}
s/.*/./; q'`
# Avoid depending upon Character Ranges.
as_cr_letters='abcdefghijklmnopqrstuvwxyz'
as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
as_cr_Letters=$as_cr_letters$as_cr_LETTERS
as_cr_digits='0123456789'
as_cr_alnum=$as_cr_Letters$as_cr_digits
ECHO_C= ECHO_N= ECHO_T=
case `echo -n x` in #(((((
-n*)
case `echo 'xy\c'` in
*c*) ECHO_T=' ';; # ECHO_T is single tab character.
xy) ECHO_C='\c';;
*) echo `echo ksh88 bug on AIX 6.1` > /dev/null
ECHO_T=' ';;
esac;;
*)
ECHO_N='-n';;
esac
rm -f conf$$ conf$$.exe conf$$.file
if test -d conf$$.dir; then
rm -f conf$$.dir/conf$$.file
else
rm -f conf$$.dir
mkdir conf$$.dir 2>/dev/null
fi
if (echo >conf$$.file) 2>/dev/null; then
if ln -s conf$$.file conf$$ 2>/dev/null; then
as_ln_s='ln -s'
# ... but there are two gotchas:
# 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
# 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
# In both cases, we have to default to `cp -pR'.
ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
as_ln_s='cp -pR'
elif ln conf$$.file conf$$ 2>/dev/null; then
as_ln_s=ln
else
as_ln_s='cp -pR'
fi
else
as_ln_s='cp -pR'
fi
rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
rmdir conf$$.dir 2>/dev/null
# as_fn_mkdir_p
# -------------
# Create "$as_dir" as a directory, including parents if necessary.
as_fn_mkdir_p ()
{
case $as_dir in #(
-*) as_dir=./$as_dir;;
esac
test -d "$as_dir" || eval $as_mkdir_p || {
as_dirs=
while :; do
case $as_dir in #(
*\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
*) as_qdir=$as_dir;;
esac
as_dirs="'$as_qdir' $as_dirs"
as_dir=`$as_dirname -- "$as_dir" ||
$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
X"$as_dir" : 'X\(//\)[^/]' \| \
X"$as_dir" : 'X\(//\)$' \| \
X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
$as_echo X"$as_dir" |
sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
s//\1/
q
}
/^X\(\/\/\)[^/].*/{
s//\1/
q
}
/^X\(\/\/\)$/{
s//\1/
q
}
/^X\(\/\).*/{
s//\1/
q
}
s/.*/./; q'`
test -d "$as_dir" && break
done
test -z "$as_dirs" || eval "mkdir $as_dirs"
} || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir"
} # as_fn_mkdir_p
if mkdir -p . 2>/dev/null; then
as_mkdir_p='mkdir -p "$as_dir"'
else
test -d ./-p && rmdir ./-p
as_mkdir_p=false
fi
# as_fn_executable_p FILE
# -----------------------
# Test if FILE is an executable regular file.
as_fn_executable_p ()
{
test -f "$1" && test -x "$1"
} # as_fn_executable_p
as_test_x='test -x'
as_executable_p=as_fn_executable_p
# Sed expression to map a string onto a valid CPP name.
as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
# Sed expression to map a string onto a valid variable name.
as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
exec 6>&1
## ----------------------------------- ##
## Main body of $CONFIG_STATUS script. ##
## ----------------------------------- ##
_ASEOF
test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1
cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# Save the log message, to keep $0 and so on meaningful, and to
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
This file was extended by Caspar $as_me 20170830, which was
generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
CONFIG_HEADERS = $CONFIG_HEADERS
CONFIG_LINKS = $CONFIG_LINKS
CONFIG_COMMANDS = $CONFIG_COMMANDS
$ $0 $@
on `(hostname || uname -n) 2>/dev/null | sed 1q`
"
_ACEOF
case $ac_config_files in *"
"*) set x $ac_config_files; shift; ac_config_files=$*;;
esac
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
# Files that config.status was made for.
config_files="$ac_config_files"
_ACEOF
cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
ac_cs_usage="\
\`$as_me' instantiates files and other configuration actions
from templates according to the current configuration. Unless the files
and actions are specified as TAGs, all are instantiated by default.
Usage: $0 [OPTION]... [TAG]...
-h, --help print this help, then exit
-V, --version print version number and configuration settings, then exit
--config print configuration, then exit
-q, --quiet, --silent
do not print progress messages
-d, --debug don't remove temporary files
--recheck update $as_me by reconfiguring in the same conditions
--file=FILE[:TEMPLATE]
instantiate the configuration file FILE
Configuration files:
$config_files
Report bugs to ."
_ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
Caspar config.status 20170830
configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\"
Copyright (C) 2012 Free Software Foundation, Inc.
This config.status script is free software; the Free Software Foundation
gives unlimited permission to copy, distribute and modify it."
ac_pwd='$ac_pwd'
srcdir='$srcdir'
INSTALL='$INSTALL'
MKDIR_P='$MKDIR_P'
AWK='$AWK'
test -n "\$AWK" || AWK=awk
_ACEOF
cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# The default lists apply if the user does not specify any file.
ac_need_defaults=:
while test $# != 0
do
case $1 in
--*=?*)
ac_option=`expr "X$1" : 'X\([^=]*\)='`
ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'`
ac_shift=:
;;
--*=)
ac_option=`expr "X$1" : 'X\([^=]*\)='`
ac_optarg=
ac_shift=:
;;
*)
ac_option=$1
ac_optarg=$2
ac_shift=shift
;;
esac
case $ac_option in
# Handling of the options.
-recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
ac_cs_recheck=: ;;
--version | --versio | --versi | --vers | --ver | --ve | --v | -V )
$as_echo "$ac_cs_version"; exit ;;
--config | --confi | --conf | --con | --co | --c )
$as_echo "$ac_cs_config"; exit ;;
--debug | --debu | --deb | --de | --d | -d )
debug=: ;;
--file | --fil | --fi | --f )
$ac_shift
case $ac_optarg in
*\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
'') as_fn_error $? "missing file argument" ;;
esac
as_fn_append CONFIG_FILES " '$ac_optarg'"
ac_need_defaults=false;;
--he | --h | --help | --hel | -h )
$as_echo "$ac_cs_usage"; exit ;;
-q | -quiet | --quiet | --quie | --qui | --qu | --q \
| -silent | --silent | --silen | --sile | --sil | --si | --s)
ac_cs_silent=: ;;
# This is an error.
-*) as_fn_error $? "unrecognized option: \`$1'
Try \`$0 --help' for more information." ;;
*) as_fn_append ac_config_targets " $1"
ac_need_defaults=false ;;
esac
shift
done
ac_configure_extra_args=
if $ac_cs_silent; then
exec 6>/dev/null
ac_configure_extra_args="$ac_configure_extra_args --silent"
fi
_ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
if \$ac_cs_recheck; then
set X $SHELL '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
shift
\$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6
CONFIG_SHELL='$SHELL'
export CONFIG_SHELL
exec "\$@"
fi
_ACEOF
cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
exec 5>>config.log
{
echo
sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
## Running $as_me. ##
_ASBOX
$as_echo "$ac_log"
} >&5
_ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
_ACEOF
cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# Handling of arguments.
for ac_config_target in $ac_config_targets
do
case $ac_config_target in
"Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;;
"doc/Makefile") CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;;
"mk/Makefile") CONFIG_FILES="$CONFIG_FILES mk/Makefile" ;;
"sgml/Makefile") CONFIG_FILES="$CONFIG_FILES sgml/Makefile" ;;
"script/Makefile") CONFIG_FILES="$CONFIG_FILES script/Makefile" ;;
*) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;;
esac
done
# If the user did not use the arguments to specify the items to instantiate,
# then the envvar interface is used. Set only those that are not.
# We use the long form for the default assignment because of an extremely
# bizarre bug on SunOS 4.1.3.
if $ac_need_defaults; then
test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
fi
# Have a temporary directory for convenience. Make it in the build tree
# simply because there is no reason against having it here, and in addition,
# creating and moving files from /tmp can sometimes cause problems.
# Hook for its removal unless debugging.
# Note that there is a small window in which the directory will not be cleaned:
# after its creation but before its name has been assigned to `$tmp'.
$debug ||
{
tmp= ac_tmp=
trap 'exit_status=$?
: "${ac_tmp:=$tmp}"
{ test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status
' 0
trap 'as_fn_exit 1' 1 2 13 15
}
# Create a (secure) tmp directory for tmp files.
{
tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` &&
test -d "$tmp"
} ||
{
tmp=./conf$$-$RANDOM
(umask 077 && mkdir "$tmp")
} || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5
ac_tmp=$tmp
# Set up the scripts for CONFIG_FILES section.
# No need to generate them if there are no CONFIG_FILES.
# This happens for instance with `./config.status config.h'.
if test -n "$CONFIG_FILES"; then
ac_cr=`echo X | tr X '\015'`
# On cygwin, bash can eat \r inside `` if the user requested igncr.
# But we know of no other shell where ac_cr would be empty at this
# point, so we can use a bashism as a fallback.
if test "x$ac_cr" = x; then
eval ac_cr=\$\'\\r\'
fi
ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' /dev/null`
if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then
ac_cs_awk_cr='\\r'
else
ac_cs_awk_cr=$ac_cr
fi
echo 'BEGIN {' >"$ac_tmp/subs1.awk" &&
_ACEOF
{
echo "cat >conf$$subs.awk <<_ACEOF" &&
echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' &&
echo "_ACEOF"
} >conf$$subs.sh ||
as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
ac_delim_num=`echo "$ac_subst_vars" | grep -c '^'`
ac_delim='%!_!# '
for ac_last_try in false false false false false :; do
. ./conf$$subs.sh ||
as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X`
if test $ac_delim_n = $ac_delim_num; then
break
elif $ac_last_try; then
as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
else
ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
fi
done
rm -f conf$$subs.sh
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
cat >>"\$ac_tmp/subs1.awk" <<\\_ACAWK &&
_ACEOF
sed -n '
h
s/^/S["/; s/!.*/"]=/
p
g
s/^[^!]*!//
:repl
t repl
s/'"$ac_delim"'$//
t delim
:nl
h
s/\(.\{148\}\)..*/\1/
t more1
s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/
p
n
b repl
:more1
s/["\\]/\\&/g; s/^/"/; s/$/"\\/
p
g
s/.\{148\}//
t nl
:delim
h
s/\(.\{148\}\)..*/\1/
t more2
s/["\\]/\\&/g; s/^/"/; s/$/"/
p
b
:more2
s/["\\]/\\&/g; s/^/"/; s/$/"\\/
p
g
s/.\{148\}//
t delim
' >$CONFIG_STATUS || ac_write_fail=1
rm -f conf$$subs.awk
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
_ACAWK
cat >>"\$ac_tmp/subs1.awk" <<_ACAWK &&
for (key in S) S_is_set[key] = 1
FS = ""
}
{
line = $ 0
nfields = split(line, field, "@")
substed = 0
len = length(field[1])
for (i = 2; i < nfields; i++) {
key = field[i]
keylen = length(key)
if (S_is_set[key]) {
value = S[key]
line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3)
len += length(value) + length(field[++i])
substed = 1
} else
len += 1 + keylen
}
print line
}
_ACAWK
_ACEOF
cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then
sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g"
else
cat
fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \
|| as_fn_error $? "could not setup config files machinery" "$LINENO" 5
_ACEOF
# VPATH may cause trouble with some makes, so we remove sole $(srcdir),
# ${srcdir} and @srcdir@ entries from VPATH if srcdir is ".", strip leading and
# trailing colons and then remove the whole line if VPATH becomes empty
# (actually we leave an empty line to preserve line numbers).
if test "x$srcdir" = x.; then
ac_vpsub='/^[ ]*VPATH[ ]*=[ ]*/{
h
s///
s/^/:/
s/[ ]*$/:/
s/:\$(srcdir):/:/g
s/:\${srcdir}:/:/g
s/:@srcdir@:/:/g
s/^:*//
s/:*$//
x
s/\(=[ ]*\).*/\1/
G
s/\n//
s/^[^=]*=[ ]*$//
}'
fi
cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
fi # test -n "$CONFIG_FILES"
eval set X " :F $CONFIG_FILES "
shift
for ac_tag
do
case $ac_tag in
:[FHLC]) ac_mode=$ac_tag; continue;;
esac
case $ac_mode$ac_tag in
:[FHL]*:*);;
:L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;;
:[FH]-) ac_tag=-:-;;
:[FH]*) ac_tag=$ac_tag:$ac_tag.in;;
esac
ac_save_IFS=$IFS
IFS=:
set x $ac_tag
IFS=$ac_save_IFS
shift
ac_file=$1
shift
case $ac_mode in
:L) ac_source=$1;;
:[FH])
ac_file_inputs=
for ac_f
do
case $ac_f in
-) ac_f="$ac_tmp/stdin";;
*) # Look for the file first in the build tree, then in the source tree
# (if the path is not absolute). The absolute path cannot be DOS-style,
# because $ac_f cannot contain `:'.
test -f "$ac_f" ||
case $ac_f in
[\\/$]*) false;;
*) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";;
esac ||
as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;;
esac
case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac
as_fn_append ac_file_inputs " '$ac_f'"
done
# Let's still pretend it is `configure' which instantiates (i.e., don't
# use $as_me), people would be surprised to read:
# /* config.h. Generated by config.status. */
configure_input='Generated from '`
$as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g'
`' by configure.'
if test x"$ac_file" != x-; then
configure_input="$ac_file. $configure_input"
{ $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5
$as_echo "$as_me: creating $ac_file" >&6;}
fi
# Neutralize special characters interpreted by sed in replacement strings.
case $configure_input in #(
*\&* | *\|* | *\\* )
ac_sed_conf_input=`$as_echo "$configure_input" |
sed 's/[\\\\&|]/\\\\&/g'`;; #(
*) ac_sed_conf_input=$configure_input;;
esac
case $ac_tag in
*:-:* | *:-) cat >"$ac_tmp/stdin" \
|| as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;;
esac
;;
esac
ac_dir=`$as_dirname -- "$ac_file" ||
$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
X"$ac_file" : 'X\(//\)[^/]' \| \
X"$ac_file" : 'X\(//\)$' \| \
X"$ac_file" : 'X\(/\)' \| . 2>/dev/null ||
$as_echo X"$ac_file" |
sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
s//\1/
q
}
/^X\(\/\/\)[^/].*/{
s//\1/
q
}
/^X\(\/\/\)$/{
s//\1/
q
}
/^X\(\/\).*/{
s//\1/
q
}
s/.*/./; q'`
as_dir="$ac_dir"; as_fn_mkdir_p
ac_builddir=.
case "$ac_dir" in
.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
*)
ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
# A ".." for each directory in $ac_dir_suffix.
ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
case $ac_top_builddir_sub in
"") ac_top_builddir_sub=. ac_top_build_prefix= ;;
*) ac_top_build_prefix=$ac_top_builddir_sub/ ;;
esac ;;
esac
ac_abs_top_builddir=$ac_pwd
ac_abs_builddir=$ac_pwd$ac_dir_suffix
# for backward compatibility:
ac_top_builddir=$ac_top_build_prefix
case $srcdir in
.) # We are building in place.
ac_srcdir=.
ac_top_srcdir=$ac_top_builddir_sub
ac_abs_top_srcdir=$ac_pwd ;;
[\\/]* | ?:[\\/]* ) # Absolute name.
ac_srcdir=$srcdir$ac_dir_suffix;
ac_top_srcdir=$srcdir
ac_abs_top_srcdir=$srcdir ;;
*) # Relative name.
ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix
ac_top_srcdir=$ac_top_build_prefix$srcdir
ac_abs_top_srcdir=$ac_pwd/$srcdir ;;
esac
ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
case $ac_mode in
:F)
#
# CONFIG_FILE
#
case $INSTALL in
[\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;;
*) ac_INSTALL=$ac_top_build_prefix$INSTALL ;;
esac
ac_MKDIR_P=$MKDIR_P
case $MKDIR_P in
[\\/$]* | ?:[\\/]* ) ;;
*/*) ac_MKDIR_P=$ac_top_build_prefix$MKDIR_P ;;
esac
_ACEOF
cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# If the template does not know about datarootdir, expand it.
# FIXME: This hack should be removed a few years after 2.60.
ac_datarootdir_hack=; ac_datarootdir_seen=
ac_sed_dataroot='
/datarootdir/ {
p
q
}
/@datadir@/p
/@docdir@/p
/@infodir@/p
/@localedir@/p
/@mandir@/p'
case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in
*datarootdir*) ac_datarootdir_seen=yes;;
*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*)
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5
$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;}
_ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_datarootdir_hack='
s&@datadir@&$datadir&g
s&@docdir@&$docdir&g
s&@infodir@&$infodir&g
s&@localedir@&$localedir&g
s&@mandir@&$mandir&g
s&\\\${datarootdir}&$datarootdir&g' ;;
esac
_ACEOF
# Neutralize VPATH when `$srcdir' = `.'.
# Shell code in configure.ac might set extrasub.
# FIXME: do we really want to maintain this feature?
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_sed_extra="$ac_vpsub
$extrasub
_ACEOF
cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
:t
/@[a-zA-Z_][a-zA-Z_0-9]*@/!b
s|@configure_input@|$ac_sed_conf_input|;t t
s&@top_builddir@&$ac_top_builddir_sub&;t t
s&@top_build_prefix@&$ac_top_build_prefix&;t t
s&@srcdir@&$ac_srcdir&;t t
s&@abs_srcdir@&$ac_abs_srcdir&;t t
s&@top_srcdir@&$ac_top_srcdir&;t t
s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t
s&@builddir@&$ac_builddir&;t t
s&@abs_builddir@&$ac_abs_builddir&;t t
s&@abs_top_builddir@&$ac_abs_top_builddir&;t t
s&@INSTALL@&$ac_INSTALL&;t t
s&@MKDIR_P@&$ac_MKDIR_P&;t t
$ac_datarootdir_hack
"
eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \
>$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5
test -z "$ac_datarootdir_hack$ac_datarootdir_seen" &&
{ ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } &&
{ ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' \
"$ac_tmp/out"`; test -z "$ac_out"; } &&
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir'
which seems to be undefined. Please make sure it is defined" >&5
$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir'
which seems to be undefined. Please make sure it is defined" >&2;}
rm -f "$ac_tmp/stdin"
case $ac_file in
-) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";;
*) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";;
esac \
|| as_fn_error $? "could not create $ac_file" "$LINENO" 5
;;
esac
done # for ac_tag
as_fn_exit 0
_ACEOF
ac_clean_files=$ac_clean_files_save
test $ac_write_fail = 0 ||
as_fn_error $? "write failure creating $CONFIG_STATUS" "$LINENO" 5
# configure is writing to config.log, and then calls config.status.
# config.status does its own redirection, appending to config.log.
# Unfortunately, on DOS this fails, as config.log is still kept open
# by configure, so config.status won't be able to write to it; its
# output is simply discarded. So we exec the FD to /dev/null,
# effectively closing config.log, so it can be properly (re)opened and
# appended to by config.status. When coming back to configure, we
# need to make the FD available again.
if test "$no_create" != yes; then
ac_cs_success=:
ac_config_status_args=
test "$silent" = yes &&
ac_config_status_args="$ac_config_status_args --quiet"
exec 5>/dev/null
$SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false
exec 5>>config.log
# Use ||, not &&, to avoid exiting from the if with $? = 1, which
# would make configure fail if this is the last instruction.
$ac_cs_success || as_fn_exit 1
fi
if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5
$as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;}
fi
caspar-20170830/VERSION.m4 0000644 0001751 0001751 00000000045 13151515270 011542 0000000 0000000 m4_define([AD1_VERSION], [20170830])
caspar-20170830/configure.ac 0000644 0001751 0001751 00000001525 13151515253 012446 0000000 0000000 dnl
dnl This file is maintained at http://git.mdcc.cx/caspar
dnl
dnl After editing this file, run automake to regenerate Makefile.in's.
dnl Process this file with autoconf to produce a configure script.
# This script is free software; you can distribute it and/or modify it
# under the terms of the GNU GPL. See the file COPYING.
m4_include([VERSION.m4])dnl
AC_INIT([Caspar],
[AD1_VERSION],
[joostvb-caspar@mdcc.cx],
[caspar])
AC_PREREQ(2.67)
AM_INIT_AUTOMAKE
AC_COPYRIGHT([
Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2009, 2010 Joost van Baal
Copyright (C) 2012, 2013, 2014 Joost van Baal-Ilić
])
AC_REVISION([AD1_VERSION])
AC_PROG_INSTALL
AC_PROG_LN_S
AC_CONFIG_FILES([
Makefile
doc/Makefile
mk/Makefile
sgml/Makefile
script/Makefile
])
AC_OUTPUT
caspar-20170830/aclocal.m4 0000644 0001751 0001751 00000064677 13151515274 012044 0000000 0000000 # generated automatically by aclocal 1.14.1 -*- Autoconf -*-
# Copyright (C) 1996-2013 Free Software Foundation, Inc.
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
m4_ifndef([AC_CONFIG_MACRO_DIRS], [m4_defun([_AM_CONFIG_MACRO_DIRS], [])m4_defun([AC_CONFIG_MACRO_DIRS], [_AM_CONFIG_MACRO_DIRS($@)])])
m4_ifndef([AC_AUTOCONF_VERSION],
[m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.69],,
[m4_warning([this file was generated for autoconf 2.69.
You have another version of autoconf. It may work, but is not guaranteed to.
If you have problems, you may need to regenerate the build system entirely.
To do so, use the procedure documented by the package, typically 'autoreconf'.])])
# Copyright (C) 2002-2013 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# AM_AUTOMAKE_VERSION(VERSION)
# ----------------------------
# Automake X.Y traces this macro to ensure aclocal.m4 has been
# generated from the m4 files accompanying Automake X.Y.
# (This private macro should not be called outside this file.)
AC_DEFUN([AM_AUTOMAKE_VERSION],
[am__api_version='1.14'
dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
dnl require some minimum version. Point them to the right macro.
m4_if([$1], [1.14.1], [],
[AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
])
# _AM_AUTOCONF_VERSION(VERSION)
# -----------------------------
# aclocal traces this macro to find the Autoconf version.
# This is a private macro too. Using m4_define simplifies
# the logic in aclocal, which can simply ignore this definition.
m4_define([_AM_AUTOCONF_VERSION], [])
# AM_SET_CURRENT_AUTOMAKE_VERSION
# -------------------------------
# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
# This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
[AM_AUTOMAKE_VERSION([1.14.1])dnl
m4_ifndef([AC_AUTOCONF_VERSION],
[m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
# AM_AUX_DIR_EXPAND -*- Autoconf -*-
# Copyright (C) 2001-2013 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets
# $ac_aux_dir to '$srcdir/foo'. In other projects, it is set to
# '$srcdir', '$srcdir/..', or '$srcdir/../..'.
#
# Of course, Automake must honor this variable whenever it calls a
# tool from the auxiliary directory. The problem is that $srcdir (and
# therefore $ac_aux_dir as well) can be either absolute or relative,
# depending on how configure is run. This is pretty annoying, since
# it makes $ac_aux_dir quite unusable in subdirectories: in the top
# source directory, any form will work fine, but in subdirectories a
# relative path needs to be adjusted first.
#
# $ac_aux_dir/missing
# fails when called from a subdirectory if $ac_aux_dir is relative
# $top_srcdir/$ac_aux_dir/missing
# fails if $ac_aux_dir is absolute,
# fails when called from a subdirectory in a VPATH build with
# a relative $ac_aux_dir
#
# The reason of the latter failure is that $top_srcdir and $ac_aux_dir
# are both prefixed by $srcdir. In an in-source build this is usually
# harmless because $srcdir is '.', but things will broke when you
# start a VPATH build or use an absolute $srcdir.
#
# So we could use something similar to $top_srcdir/$ac_aux_dir/missing,
# iff we strip the leading $srcdir from $ac_aux_dir. That would be:
# am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"`
# and then we would define $MISSING as
# MISSING="\${SHELL} $am_aux_dir/missing"
# This will work as long as MISSING is not called from configure, because
# unfortunately $(top_srcdir) has no meaning in configure.
# However there are other variables, like CC, which are often used in
# configure, and could therefore not use this "fixed" $ac_aux_dir.
#
# Another solution, used here, is to always expand $ac_aux_dir to an
# absolute PATH. The drawback is that using absolute paths prevent a
# configured tree to be moved without reconfiguration.
AC_DEFUN([AM_AUX_DIR_EXPAND],
[AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl
# Expand $ac_aux_dir to an absolute path.
am_aux_dir=`cd "$ac_aux_dir" && pwd`
])
# Do all the work for Automake. -*- Autoconf -*-
# Copyright (C) 1996-2013 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This macro actually does too much. Some checks are only needed if
# your package does certain things. But this isn't really a big deal.
dnl Redefine AC_PROG_CC to automatically invoke _AM_PROG_CC_C_O.
m4_define([AC_PROG_CC],
m4_defn([AC_PROG_CC])
[_AM_PROG_CC_C_O
])
# AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
# AM_INIT_AUTOMAKE([OPTIONS])
# -----------------------------------------------
# The call with PACKAGE and VERSION arguments is the old style
# call (pre autoconf-2.50), which is being phased out. PACKAGE
# and VERSION should now be passed to AC_INIT and removed from
# the call to AM_INIT_AUTOMAKE.
# We support both call styles for the transition. After
# the next Automake release, Autoconf can make the AC_INIT
# arguments mandatory, and then we can depend on a new Autoconf
# release and drop the old call support.
AC_DEFUN([AM_INIT_AUTOMAKE],
[AC_PREREQ([2.65])dnl
dnl Autoconf wants to disallow AM_ names. We explicitly allow
dnl the ones we care about.
m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl
AC_REQUIRE([AC_PROG_INSTALL])dnl
if test "`cd $srcdir && pwd`" != "`pwd`"; then
# Use -I$(srcdir) only when $(srcdir) != ., so that make's output
# is not polluted with repeated "-I."
AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl
# test to see if srcdir already configured
if test -f $srcdir/config.status; then
AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
fi
fi
# test whether we have cygpath
if test -z "$CYGPATH_W"; then
if (cygpath --version) >/dev/null 2>/dev/null; then
CYGPATH_W='cygpath -w'
else
CYGPATH_W=echo
fi
fi
AC_SUBST([CYGPATH_W])
# Define the identity of the package.
dnl Distinguish between old-style and new-style calls.
m4_ifval([$2],
[AC_DIAGNOSE([obsolete],
[$0: two- and three-arguments forms are deprecated.])
m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
AC_SUBST([PACKAGE], [$1])dnl
AC_SUBST([VERSION], [$2])],
[_AM_SET_OPTIONS([$1])dnl
dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT.
m4_if(
m4_ifdef([AC_PACKAGE_NAME], [ok]):m4_ifdef([AC_PACKAGE_VERSION], [ok]),
[ok:ok],,
[m4_fatal([AC_INIT should be called with package and version arguments])])dnl
AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl
_AM_IF_OPTION([no-define],,
[AC_DEFINE_UNQUOTED([PACKAGE], ["$PACKAGE"], [Name of package])
AC_DEFINE_UNQUOTED([VERSION], ["$VERSION"], [Version number of package])])dnl
# Some tools Automake needs.
AC_REQUIRE([AM_SANITY_CHECK])dnl
AC_REQUIRE([AC_ARG_PROGRAM])dnl
AM_MISSING_PROG([ACLOCAL], [aclocal-${am__api_version}])
AM_MISSING_PROG([AUTOCONF], [autoconf])
AM_MISSING_PROG([AUTOMAKE], [automake-${am__api_version}])
AM_MISSING_PROG([AUTOHEADER], [autoheader])
AM_MISSING_PROG([MAKEINFO], [makeinfo])
AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl
AC_REQUIRE([AC_PROG_MKDIR_P])dnl
# For better backward compatibility. To be removed once Automake 1.9.x
# dies out for good. For more background, see:
#
#
AC_SUBST([mkdir_p], ['$(MKDIR_P)'])
# We need awk for the "check" target. The system "awk" is bad on
# some platforms.
AC_REQUIRE([AC_PROG_AWK])dnl
AC_REQUIRE([AC_PROG_MAKE_SET])dnl
AC_REQUIRE([AM_SET_LEADING_DOT])dnl
_AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])],
[_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])],
[_AM_PROG_TAR([v7])])])
_AM_IF_OPTION([no-dependencies],,
[AC_PROVIDE_IFELSE([AC_PROG_CC],
[_AM_DEPENDENCIES([CC])],
[m4_define([AC_PROG_CC],
m4_defn([AC_PROG_CC])[_AM_DEPENDENCIES([CC])])])dnl
AC_PROVIDE_IFELSE([AC_PROG_CXX],
[_AM_DEPENDENCIES([CXX])],
[m4_define([AC_PROG_CXX],
m4_defn([AC_PROG_CXX])[_AM_DEPENDENCIES([CXX])])])dnl
AC_PROVIDE_IFELSE([AC_PROG_OBJC],
[_AM_DEPENDENCIES([OBJC])],
[m4_define([AC_PROG_OBJC],
m4_defn([AC_PROG_OBJC])[_AM_DEPENDENCIES([OBJC])])])dnl
AC_PROVIDE_IFELSE([AC_PROG_OBJCXX],
[_AM_DEPENDENCIES([OBJCXX])],
[m4_define([AC_PROG_OBJCXX],
m4_defn([AC_PROG_OBJCXX])[_AM_DEPENDENCIES([OBJCXX])])])dnl
])
AC_REQUIRE([AM_SILENT_RULES])dnl
dnl The testsuite driver may need to know about EXEEXT, so add the
dnl 'am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This
dnl macro is hooked onto _AC_COMPILER_EXEEXT early, see below.
AC_CONFIG_COMMANDS_PRE(dnl
[m4_provide_if([_AM_COMPILER_EXEEXT],
[AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl
# POSIX will say in a future version that running "rm -f" with no argument
# is OK; and we want to be able to make that assumption in our Makefile
# recipes. So use an aggressive probe to check that the usage we want is
# actually supported "in the wild" to an acceptable degree.
# See automake bug#10828.
# To make any issue more visible, cause the running configure to be aborted
# by default if the 'rm' program in use doesn't match our expectations; the
# user can still override this though.
if rm -f && rm -fr && rm -rf; then : OK; else
cat >&2 <<'END'
Oops!
Your 'rm' program seems unable to run without file operands specified
on the command line, even when the '-f' option is present. This is contrary
to the behaviour of most rm programs out there, and not conforming with
the upcoming POSIX standard:
Please tell bug-automake@gnu.org about your system, including the value
of your $PATH and any error possibly output before this message. This
can help us improve future automake versions.
END
if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then
echo 'Configuration will proceed anyway, since you have set the' >&2
echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2
echo >&2
else
cat >&2 <<'END'
Aborting the configuration process, to ensure you take notice of the issue.
You can download and install GNU coreutils to get an 'rm' implementation
that behaves properly: .
If you want to complete the configuration process using your problematic
'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM
to "yes", and re-run configure.
END
AC_MSG_ERROR([Your 'rm' program is bad, sorry.])
fi
fi
])
dnl Hook into '_AC_COMPILER_EXEEXT' early to learn its expansion. Do not
dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further
dnl mangled by Autoconf and run in a shell conditional statement.
m4_define([_AC_COMPILER_EXEEXT],
m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])])
# When config.status generates a header, we must update the stamp-h file.
# This file resides in the same directory as the config header
# that is generated. The stamp files are numbered to have different names.
# Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the
# loop where config.status creates the headers, so we can generate
# our stamp files there.
AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK],
[# Compute $1's index in $config_headers.
_am_arg=$1
_am_stamp_count=1
for _am_header in $config_headers :; do
case $_am_header in
$_am_arg | $_am_arg:* )
break ;;
* )
_am_stamp_count=`expr $_am_stamp_count + 1` ;;
esac
done
echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
# Copyright (C) 2001-2013 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# AM_PROG_INSTALL_SH
# ------------------
# Define $install_sh.
AC_DEFUN([AM_PROG_INSTALL_SH],
[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
if test x"${install_sh}" != xset; then
case $am_aux_dir in
*\ * | *\ *)
install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
*)
install_sh="\${SHELL} $am_aux_dir/install-sh"
esac
fi
AC_SUBST([install_sh])])
# Copyright (C) 2003-2013 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# Check whether the underlying file-system supports filenames
# with a leading dot. For instance MS-DOS doesn't.
AC_DEFUN([AM_SET_LEADING_DOT],
[rm -rf .tst 2>/dev/null
mkdir .tst 2>/dev/null
if test -d .tst; then
am__leading_dot=.
else
am__leading_dot=_
fi
rmdir .tst 2>/dev/null
AC_SUBST([am__leading_dot])])
# Fake the existence of programs that GNU maintainers use. -*- Autoconf -*-
# Copyright (C) 1997-2013 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# AM_MISSING_PROG(NAME, PROGRAM)
# ------------------------------
AC_DEFUN([AM_MISSING_PROG],
[AC_REQUIRE([AM_MISSING_HAS_RUN])
$1=${$1-"${am_missing_run}$2"}
AC_SUBST($1)])
# AM_MISSING_HAS_RUN
# ------------------
# Define MISSING if not defined so far and test if it is modern enough.
# If it is, set am_missing_run to use it, otherwise, to nothing.
AC_DEFUN([AM_MISSING_HAS_RUN],
[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
AC_REQUIRE_AUX_FILE([missing])dnl
if test x"${MISSING+set}" != xset; then
case $am_aux_dir in
*\ * | *\ *)
MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
*)
MISSING="\${SHELL} $am_aux_dir/missing" ;;
esac
fi
# Use eval to expand $SHELL
if eval "$MISSING --is-lightweight"; then
am_missing_run="$MISSING "
else
am_missing_run=
AC_MSG_WARN(['missing' script is too old or missing])
fi
])
# Helper functions for option handling. -*- Autoconf -*-
# Copyright (C) 2001-2013 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# _AM_MANGLE_OPTION(NAME)
# -----------------------
AC_DEFUN([_AM_MANGLE_OPTION],
[[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])])
# _AM_SET_OPTION(NAME)
# --------------------
# Set option NAME. Presently that only means defining a flag for this option.
AC_DEFUN([_AM_SET_OPTION],
[m4_define(_AM_MANGLE_OPTION([$1]), [1])])
# _AM_SET_OPTIONS(OPTIONS)
# ------------------------
# OPTIONS is a space-separated list of Automake options.
AC_DEFUN([_AM_SET_OPTIONS],
[m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])])
# _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET])
# -------------------------------------------
# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
AC_DEFUN([_AM_IF_OPTION],
[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
# Check to make sure that the build environment is sane. -*- Autoconf -*-
# Copyright (C) 1996-2013 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# AM_SANITY_CHECK
# ---------------
AC_DEFUN([AM_SANITY_CHECK],
[AC_MSG_CHECKING([whether build environment is sane])
# Reject unsafe characters in $srcdir or the absolute working directory
# name. Accept space and tab only in the latter.
am_lf='
'
case `pwd` in
*[[\\\"\#\$\&\'\`$am_lf]]*)
AC_MSG_ERROR([unsafe absolute working directory name]);;
esac
case $srcdir in
*[[\\\"\#\$\&\'\`$am_lf\ \ ]]*)
AC_MSG_ERROR([unsafe srcdir value: '$srcdir']);;
esac
# Do 'set' in a subshell so we don't clobber the current shell's
# arguments. Must try -L first in case configure is actually a
# symlink; some systems play weird games with the mod time of symlinks
# (eg FreeBSD returns the mod time of the symlink's containing
# directory).
if (
am_has_slept=no
for am_try in 1 2; do
echo "timestamp, slept: $am_has_slept" > conftest.file
set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
if test "$[*]" = "X"; then
# -L didn't work.
set X `ls -t "$srcdir/configure" conftest.file`
fi
if test "$[*]" != "X $srcdir/configure conftest.file" \
&& test "$[*]" != "X conftest.file $srcdir/configure"; then
# If neither matched, then we have a broken ls. This can happen
# if, for instance, CONFIG_SHELL is bash and it inherits a
# broken ls alias from the environment. This has actually
# happened. Such a system could not be considered "sane".
AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken
alias in your environment])
fi
if test "$[2]" = conftest.file || test $am_try -eq 2; then
break
fi
# Just in case.
sleep 1
am_has_slept=yes
done
test "$[2]" = conftest.file
)
then
# Ok.
:
else
AC_MSG_ERROR([newly created file is older than distributed files!
Check your system clock])
fi
AC_MSG_RESULT([yes])
# If we didn't sleep, we still need to ensure time stamps of config.status and
# generated files are strictly newer.
am_sleep_pid=
if grep 'slept: no' conftest.file >/dev/null 2>&1; then
( sleep 1 ) &
am_sleep_pid=$!
fi
AC_CONFIG_COMMANDS_PRE(
[AC_MSG_CHECKING([that generated files are newer than configure])
if test -n "$am_sleep_pid"; then
# Hide warnings about reused PIDs.
wait $am_sleep_pid 2>/dev/null
fi
AC_MSG_RESULT([done])])
rm -f conftest.file
])
# Copyright (C) 2009-2013 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# AM_SILENT_RULES([DEFAULT])
# --------------------------
# Enable less verbose build rules; with the default set to DEFAULT
# ("yes" being less verbose, "no" or empty being verbose).
AC_DEFUN([AM_SILENT_RULES],
[AC_ARG_ENABLE([silent-rules], [dnl
AS_HELP_STRING(
[--enable-silent-rules],
[less verbose build output (undo: "make V=1")])
AS_HELP_STRING(
[--disable-silent-rules],
[verbose build output (undo: "make V=0")])dnl
])
case $enable_silent_rules in @%:@ (((
yes) AM_DEFAULT_VERBOSITY=0;;
no) AM_DEFAULT_VERBOSITY=1;;
*) AM_DEFAULT_VERBOSITY=m4_if([$1], [yes], [0], [1]);;
esac
dnl
dnl A few 'make' implementations (e.g., NonStop OS and NextStep)
dnl do not support nested variable expansions.
dnl See automake bug#9928 and bug#10237.
am_make=${MAKE-make}
AC_CACHE_CHECK([whether $am_make supports nested variables],
[am_cv_make_support_nested_variables],
[if AS_ECHO([['TRUE=$(BAR$(V))
BAR0=false
BAR1=true
V=1
am__doit:
@$(TRUE)
.PHONY: am__doit']]) | $am_make -f - >/dev/null 2>&1; then
am_cv_make_support_nested_variables=yes
else
am_cv_make_support_nested_variables=no
fi])
if test $am_cv_make_support_nested_variables = yes; then
dnl Using '$V' instead of '$(V)' breaks IRIX make.
AM_V='$(V)'
AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)'
else
AM_V=$AM_DEFAULT_VERBOSITY
AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY
fi
AC_SUBST([AM_V])dnl
AM_SUBST_NOTMAKE([AM_V])dnl
AC_SUBST([AM_DEFAULT_V])dnl
AM_SUBST_NOTMAKE([AM_DEFAULT_V])dnl
AC_SUBST([AM_DEFAULT_VERBOSITY])dnl
AM_BACKSLASH='\'
AC_SUBST([AM_BACKSLASH])dnl
_AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
])
# Copyright (C) 2001-2013 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# AM_PROG_INSTALL_STRIP
# ---------------------
# One issue with vendor 'install' (even GNU) is that you can't
# specify the program used to strip binaries. This is especially
# annoying in cross-compiling environments, where the build's strip
# is unlikely to handle the host's binaries.
# Fortunately install-sh will honor a STRIPPROG variable, so we
# always use install-sh in "make install-strip", and initialize
# STRIPPROG with the value of the STRIP variable (set by the user).
AC_DEFUN([AM_PROG_INSTALL_STRIP],
[AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
# Installed binaries are usually stripped using 'strip' when the user
# run "make install-strip". However 'strip' might not be the right
# tool to use in cross-compilation environments, therefore Automake
# will honor the 'STRIP' environment variable to overrule this program.
dnl Don't test for $cross_compiling = yes, because it might be 'maybe'.
if test "$cross_compiling" != no; then
AC_CHECK_TOOL([STRIP], [strip], :)
fi
INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
AC_SUBST([INSTALL_STRIP_PROGRAM])])
# Copyright (C) 2006-2013 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# _AM_SUBST_NOTMAKE(VARIABLE)
# ---------------------------
# Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in.
# This macro is traced by Automake.
AC_DEFUN([_AM_SUBST_NOTMAKE])
# AM_SUBST_NOTMAKE(VARIABLE)
# --------------------------
# Public sister of _AM_SUBST_NOTMAKE.
AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
# Check how to create a tarball. -*- Autoconf -*-
# Copyright (C) 2004-2013 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# _AM_PROG_TAR(FORMAT)
# --------------------
# Check how to create a tarball in format FORMAT.
# FORMAT should be one of 'v7', 'ustar', or 'pax'.
#
# Substitute a variable $(am__tar) that is a command
# writing to stdout a FORMAT-tarball containing the directory
# $tardir.
# tardir=directory && $(am__tar) > result.tar
#
# Substitute a variable $(am__untar) that extract such
# a tarball read from stdin.
# $(am__untar) < result.tar
#
AC_DEFUN([_AM_PROG_TAR],
[# Always define AMTAR for backward compatibility. Yes, it's still used
# in the wild :-( We should find a proper way to deprecate it ...
AC_SUBST([AMTAR], ['$${TAR-tar}'])
# We'll loop over all known methods to create a tar archive until one works.
_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none'
m4_if([$1], [v7],
[am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'],
[m4_case([$1],
[ustar],
[# The POSIX 1988 'ustar' format is defined with fixed-size fields.
# There is notably a 21 bits limit for the UID and the GID. In fact,
# the 'pax' utility can hang on bigger UID/GID (see automake bug#8343
# and bug#13588).
am_max_uid=2097151 # 2^21 - 1
am_max_gid=$am_max_uid
# The $UID and $GID variables are not portable, so we need to resort
# to the POSIX-mandated id(1) utility. Errors in the 'id' calls
# below are definitely unexpected, so allow the users to see them
# (that is, avoid stderr redirection).
am_uid=`id -u || echo unknown`
am_gid=`id -g || echo unknown`
AC_MSG_CHECKING([whether UID '$am_uid' is supported by ustar format])
if test $am_uid -le $am_max_uid; then
AC_MSG_RESULT([yes])
else
AC_MSG_RESULT([no])
_am_tools=none
fi
AC_MSG_CHECKING([whether GID '$am_gid' is supported by ustar format])
if test $am_gid -le $am_max_gid; then
AC_MSG_RESULT([yes])
else
AC_MSG_RESULT([no])
_am_tools=none
fi],
[pax],
[],
[m4_fatal([Unknown tar format])])
AC_MSG_CHECKING([how to create a $1 tar archive])
# Go ahead even if we have the value already cached. We do so because we
# need to set the values for the 'am__tar' and 'am__untar' variables.
_am_tools=${am_cv_prog_tar_$1-$_am_tools}
for _am_tool in $_am_tools; do
case $_am_tool in
gnutar)
for _am_tar in tar gnutar gtar; do
AM_RUN_LOG([$_am_tar --version]) && break
done
am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"'
am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"'
am__untar="$_am_tar -xf -"
;;
plaintar)
# Must skip GNU tar: if it does not support --format= it doesn't create
# ustar tarball either.
(tar --version) >/dev/null 2>&1 && continue
am__tar='tar chf - "$$tardir"'
am__tar_='tar chf - "$tardir"'
am__untar='tar xf -'
;;
pax)
am__tar='pax -L -x $1 -w "$$tardir"'
am__tar_='pax -L -x $1 -w "$tardir"'
am__untar='pax -r'
;;
cpio)
am__tar='find "$$tardir" -print | cpio -o -H $1 -L'
am__tar_='find "$tardir" -print | cpio -o -H $1 -L'
am__untar='cpio -i -H $1 -d'
;;
none)
am__tar=false
am__tar_=false
am__untar=false
;;
esac
# If the value was cached, stop now. We just wanted to have am__tar
# and am__untar set.
test -n "${am_cv_prog_tar_$1}" && break
# tar/untar a dummy directory, and stop if the command works.
rm -rf conftest.dir
mkdir conftest.dir
echo GrepMe > conftest.dir/file
AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar])
rm -rf conftest.dir
if test -s conftest.tar; then
AM_RUN_LOG([$am__untar /dev/null 2>&1 && break
fi
done
rm -rf conftest.dir
AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool])
AC_MSG_RESULT([$am_cv_prog_tar_$1])])
AC_SUBST([am__tar])
AC_SUBST([am__untar])
]) # _AM_PROG_TAR
caspar-20170830/THANKS 0000644 0001751 0001751 00000001242 13151515253 011067 0000000 0000000 Stijn van Dongen, for writing zoem, and inventing the zoem-ized hooks in the
build environment.
Joost Kooij, for helping with the embrionic caspar mk/ implementation,
looooong ago (in 2000, I believe).
Francis J. Lacoste, for helping me writing print.dsl and html.dsl.
Guus Sliepen, for contributing an excellent and much wanted patch.
Anton Sluijtman, for offering a patch to caspar.mk, adding useful
functionality.
Wessel Dankers, for giving lots of useful suggestions for improvements.
Jeroen Hoppenbrouwers, for promoting caspar and giving useful feedback and
contributions.
Tilburg University (http://www.uvt.nl/), for using this software, and giving
comments.
caspar-20170830/TODO 0000644 0001751 0001751 00000027435 13151515253 010660 0000000 0000000 # This file is maintained at http://git.mdcc.cx/caspar
ship in doc/examples oid: printallehosts getgroups in its-unix/systems/juptile/include/install.mk
user interface (as of 2016-03-04)
joostvb@incagijs:~/sv...its-unix/systems/juptile% make -f include/install.mk printallehosts | less
link to : https://nulpunt.nu/ caspar users
Patrick "Argure" Godschalk https://github.com/Argure
--- release critical ----
- decide upon scp keep_mode: purge, and suggest scp -p ? it currently
lacks multisupport.
- "make install" fails when csp_PUSH is set to function without multi-support.
fix csp_install: add multisupport (also: keep_mode, sucp. rest might just
work)
- caspar.mk is not completely tested yet, first and second example in manpage
succeed, test 3rd and later.
$ CSP_DEBUG=yes CSP_SUCP_USER=jantje csp_sucp joe@bilbo /etc/ inittab
works fine. "export CSP_SUCP_USER=joe; make" works fine too.
"make CSP_SUCP_USER=joe" works fine too.
csp_SUCP_USER = joe
csp_PUSH = $(csp_sucp_FUNC)
make
works too. at least, it did in release 20120508....
- doc/Makefile.am: no longer ignore errors from tidy(1).
- fix manpage typesetting: install tidy @ buildhost, my name in caspar.ps
looks like crap
- The "csp_install -t dir file [file]" issue
zo 13 17:34 < Fruit> die tooltjes die meegeleverd worden
zo 13 17:35 < Fruit> die hebben typisch een destination directory en een stel
bestanden als argumenten
zo 13 17:35 < Fruit> het zou handig zijn voor de shellscripter als die
destination directory het eerste argument was
zo 13 17:38 < joostvb> das natuurlijk totaal backwards incompatible met alles
zo 13 17:38 < Fruit> valt wel mee
zo 13 17:38 < joostvb> maar iig wel n goed idee
zo 13 17:38 < Fruit> cp -t destdir file1 file2
zo 13 17:38 < joostvb> -t , die doet t m
zo 13 17:38 < Fruit> ik weet niet of scp dat kent
zo 13 17:39 < joostvb> nou ja, als 1ste arg van csp_PUSH -t is, dan
zo 13 17:39 < Fruit> magoe dat maakt ook niet zoveel uit
zo 13 17:39 < joostvb> implementeren volgens nieuw interface
zo 13 17:39 < Fruit> want bij csp_PUSH kun je toch de volgorde van de
argumenten zelf bepalen
zo 13 17:39 < Fruit> hm hacken op -t lijkt me een heel lelijk en slecht idee
zo 13 17:40 < Fruit> je hoeft echt alleen maar die tooltjes aan te passen, en
de plaatsen in caspar zelf waar precies en alleen díe
tooltjes aangeroepen worden
zo 13 17:40 < Fruit> er hoeft geen caspar api-wijziging
zo 13 17:40 < joostvb> en als mensen hun eigen tooltjes geschreven hebben?
zo 13 17:40 < joostvb> hun eigen csp_PUSH gebouwd?
zo 13 17:41 < Fruit> dan hebben ze de aanroep daarvan zelf onder controle
zo 13 17:41 < Fruit> misschien nieuwe set tooltjes introduceren met andere namen
zo 13 17:41 < Fruit> op dit moment accepteert elk van die tooltjes 1 file en 1
dir
zo 13 17:41 < Fruit> da's jammer.
zo 13 17:42 < Fruit> omdat shellscripts een beetje beperkt zijn, is n files
gevolgd door 1 dir moeilijk te implementeren
zo 13 17:42 < joostvb> csp_install dir file [file]
zo 13 17:42 < Fruit> dat idee
zo 13 17:43 < Fruit> csp_mkdirscpomgwtfbbqrofl dir file1 [file2 ...]
zo 13 17:43 < joostvb> ok, dan kan ik maken:
zo 13 17:43 < joostvb> csp_install -t dir file [file]
zo 13 17:43 < joostvb> naast:
zo 13 17:43 < joostvb> csp_install file dir
zo 13 17:43 < joostvb> das backwards compatible
zo 13 17:43 < Fruit> true
zo 13 17:44 < joostvb> en over 5 jaar wordt "-t" optioneel
zo 13 17:44 < Fruit> en je kunt geen files meer installeren die ‘-t’ heten.
zo 13 17:44 < joostvb> klopt
zo 13 17:44 < joostvb> fuk die mensen
zo 13 17:44 < joostvb> :)
zo 13 17:44 < Fruit> maar robuust gedrag met spaties en andere tekens in
bestandsnamen is nooit een sterk punt van caspar geweest.
zo 13 17:44 < joostvb> pcies
zo 13 17:44 < joostvb> van make ook niet
zo 13 17:45 < Fruit> ja! fuk die mensen. alle bestanden moeten gewoon foo.txt
heten. en die hippies met hun bar.txt kunnen de boom in
zo 13 17:45 < joostvb> zo is t maar net
0.-3) add to documentation:
vr 25 16:37 < casper> bah, maar het werkt wel, de reverse cowboy: make diff |
patch -R -p0
[16:43] [joostvb(+i)] [3:#root(+ips)] irc.uvt.nl
0.-2) fix FIXME's in doc/caspar.azm
0.-1) complete documentation of "make diff" and "make -diff" in
caspar.azm, see NEWS (not trivial...)
1.1) finish convert to git: announce on webpage, create public repo
( http://git.fruit.je/caspar , http://git.mdcc.cx/ ,
ssh://git/~joostvb/git/caspar.git )
update README on git status (see FIXME's). set up commit list.
1.3) documenteer de new style loadtarget hack even better: run "make load"
with: combining new load-style is usefull too:
csp_LOAD = lolwut
lolwut = echo ssh $1 DFHKSJDHFJKSDHJK
lolwut:
for h in $(csp_UHOSTS);do echo ssh $$h DFHKSJDHFJKSDHJK;done
use case: /etc/nsd/zones/ , first push to auth servers, then ssh to al caches
for a forced flush of cache.
--- ook best wel belangrijk ---
2.3) test & document rsync support
2.5) Ideas insprired by a discussion with Fred Vos:
(Lots of users have asked for such a feature.)
a "make check" could be usefull: test wether previous svn version is on server
before scp-ing.
za 14 21:29 < hoppie> en als je dan helemaal over the top wilt, kun je
eventueel dat linken aan install, zodat alleen waar dat
nodig is geïnstalleerd wordt. Maar da's echt optioneel.
Preliminary support added; Document this! Nice trick:
make diff || make install
make foobar-diff || make foobar-install
Make this work out of the box for all push mechanisms: add generic csp_REXEC
next to csp_PUSH.
--- typesetting stuff ---
3.1) get toc printed in html mode. even while using nochunks mode.
3.2) license should be printed, see rh vs deb doc.
3.3) add zoem.mk, for zoem ( http://micans.org/zoem ) typesetting.
--- install stuff ---
4.1) ma 13 14:07 < arvid> joostvb, ik heb een feature request voor caspar :p
ma 13 14:13 < arvid> joostvb, een exclude host mogelijkheid
ma 13 14:13 < arvid> je bijv. een heleboel host en je wilt alleen 1 host
uitsluiten
ma 13 14:14 < arvid> s/host/hosts
ma 13 14:16 < joostvb> een csp_TABOOUHOSTS wil je dus, i c
ma 13 14:17 < arvid> joostvb, yep dat klopt
[14:18] [joostvb(+i)] [13:meuknet/#root(+ips)]
2009-07 Arvid Gibas
4.2) add standard target: "make print-hosts"
4.4) "install" should depend upon "load". (should it?) ("make" currently does
both "install" and "load"; it does not do "build". (really!?)). and/or:
caspar should support "make build-recursive".
4.5) csp_BUILD is a broken concept.
Users are better off declaring csp_EXTRAFILES and creating rules for each
file that needs to be built.
csp_BUILD is an alias to csp_EXTRAFILES for backwards compatibility.
4.6) caspar chokes on spaces in filenames:
Makefile:
csp_CPDIR = /var/php/public/jccpmanu/https
include caspar/mk/caspar.mk
joostvb@scriptix:~/sv...k/sources/jccpmanu/https% ls
JCCP logo.jpg Makefile index.html logo.html
JCCPlogo.jpg empty.html loginform.html php3
joostvb@scriptix:~/sv...k/sources/jccpmanu/https% make -n
/bin/sh: line 1: test: JCCP: binary operator expected
/bin/sh: line 1: test: JCCP: binary operator expected
cp "JCCPlogo.jpg" /var/php/public/jccpmanu/https;
cp "empty.html" /var/php/public/jccpmanu/https;
cp "index.html" /var/php/public/jccpmanu/https;
cp "loginform.html" /var/php/public/jccpmanu/https;
cp "logo.html" /var/php/public/jccpmanu/https;
make does not support arrays, but space-separated strings, so: tag won't fix.
4.7) caspar chokes on : in filenames:
Makefile:
csp_SCPDIR = /etc/sysconfig/network-scripts/
csp_SUH = root@cauchy
include caspar/mk/caspar.mk
joostvb@kovalevskaya:~/sv...ysconfig/network-scripts% ls
Makefile ifcfg-eth0 ifcfg-eth0:1
joostvb@kovalevskaya:~/sv...ysconfig/network-scripts% make
caspar/mk/caspar.mk:87: *** multiple target patterns. Stop.
Bug found by Johan Hoeke.
4.29) caspar chokes on files named ";anything"
joostvb@bruhat:~% touch ';q'
joostvb@bruhat:~% make -n
caspar/mk/caspar.mk:94: *** missing rule before commands. Stop.
4.8) Suggest (or offer) a more generic interface than my_EXEC for the load
target. Users are invited to extend the interface.
They can add extra variables to their push mechanisms. So we might be
able to abstract LOAD one day. Perhaps something like
$(foreach uh,$(csp_UHOSTS),$(call csp_EXEC,$(uh),$(csp_DIR),$(csp_XARG));)
could work. If a user's exec wrapper needs more arguments, these can get
introduced as implicit variables, outside $1, $2, ...
4.9) Explain why it's good practice to do
include ../../include/install.mk
in manpage example.
4.10) Don't do
csp_scp_FUNC = $(csp_SCP) $(csp_CPFLAGS) $(1) $(2):$(3)
but do
csp_scp_FUNC = $(csp_SCP) $(4) $(1) $(2):$(3)
and use $(csp_CPFLAGS) for csp_XARGS.
_Do_ test this!
4.11) load stuff:
- Create a ``load-recursive'' target.
- supply daemons.mk: csp_SSHDEBIANLOAD csp_URUKREDHATLOAD , etc, to use
in load targets
4.12) install-recursive should call mkdir if appropriate. install should, too.
Thu 31 15:16 < Fruit> kan ik 'm ook vertellen dat-ie voordat gaat kopiëren ff
mkdir -p op de smurfer doet?
Thu 31 15:19 < joostvb> een eigen csp_PUSH schrijven
Thu 31 15:20 < joostvb> csp_PUSH krijgt zowel filenaam als directory mee als
argument
Thu 31 15:20 < joostvb> dus das kei makkelijk
Thu 31 15:20 < Fruit> csp_OLD_PUSH := $(csp_PUSH)
Thu 31 15:20 < Fruit> csp_PUSH := ssh $iets mkdir $dir; $(csp_OLD_PUSH)
4.13) The scp invocation is inefficient:
% make -n README.txt-install net.txt-install
scp "README.txt" pong:/data/www/doc/doc/;
scp "net.txt" pong:/data/www/doc/doc/;
Should be:
scp "README.txt" "net.txt" pong:/data/www/doc/doc/;
$@ vs $? might be helpful.
4.14) test wether file is up to date before scp-ing it, in order to prevent us from
doing useless (and expensive) installs. use ControlMaster
ssh_config(5) to reuse one ssh conection? Perhaps this:
ControlMaster auto
ControlPath ~/.ssh/control/%r@%h:%p
in your ~/.ssh/config (and having an ssh connection open to all relevant
hosts) fixes all "troubles". (This option is not available on Debian sarge.)
4.15) Ideas insprired by a discussion with Fred Vos:
Perhaps a note on how to use commit-hooks could be added to
documentation. Perhaps a note on ssh forced commands could be added. Perhaps
a note on a "make commit" could be added.
4.16) document this: including an included Makefile:
here := $(dir $(lastword $(MAKEFILE_LIST)))
include $(here)../../foo/bar/install.mk
Thanks Wessel.
Alternative: /usr/local/foo, as used in svn/its-unix
4.17) if one really wants, one can overrule caspar's default target:
---------
csp_SCPDIR = /etc/ssl/chains/
csp_TABOOFILES_ADD = %.asc
all: install
install: check makedir
include ../../../include/install.mk
check:
for cert in *.pem; do \
echo "$$cert:"; \
gpg --verify $$cert.asc $$cert; \
done
makedir:
for suh in $(csp_SUHS); do \
ssh $$suh mkdir -p /etc/ssl/chains; \
done
.PHONY: check makedir
---------
very likely, one could better use the "build" target for this.
4.18) it's not necessary to have Makefile in all directories of a tree, provided
caspar is fixed:
replace
DIRS := $(shell for d in *; do test -d $$d && echo $$d; done)
by
DIRS := $(patsubst %/Makefile,%,$(shell find * -mindepth 1 -name Makefile))
thanks Wessel. (This might break for trees combining GNUmakefile with Makefile
[za 14 22:29 dat breekt niet voor dat soort directories, ga maar na!
;)] .) Once this fix is implemented, get rid of the example toplevel Makefile
in caspar(7).
caspar-20170830/install-sh 0000755 0001751 0001751 00000034137 12753041535 012175 0000000 0000000 #!/bin/sh
# install - install a program, script, or datafile
scriptversion=2011-11-20.07; # UTC
# This originates from X11R5 (mit/util/scripts/install.sh), which was
# later released in X11R6 (xc/config/util/install.sh) with the
# following copyright and license.
#
# Copyright (C) 1994 X Consortium
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to
# deal in the Software without restriction, including without limitation the
# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
# sell copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in
# all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
# X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC-
# TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#
# Except as contained in this notice, the name of the X Consortium shall not
# be used in advertising or otherwise to promote the sale, use or other deal-
# ings in this Software without prior written authorization from the X Consor-
# tium.
#
#
# FSF changes to this file are in the public domain.
#
# Calling this script install-sh is preferred over install.sh, to prevent
# 'make' implicit rules from creating a file called install from it
# when there is no Makefile.
#
# This script is compatible with the BSD install script, but was written
# from scratch.
nl='
'
IFS=" "" $nl"
# set DOITPROG to echo to test this script
# Don't use :- since 4.3BSD and earlier shells don't like it.
doit=${DOITPROG-}
if test -z "$doit"; then
doit_exec=exec
else
doit_exec=$doit
fi
# Put in absolute file names if you don't have them in your path;
# or use environment vars.
chgrpprog=${CHGRPPROG-chgrp}
chmodprog=${CHMODPROG-chmod}
chownprog=${CHOWNPROG-chown}
cmpprog=${CMPPROG-cmp}
cpprog=${CPPROG-cp}
mkdirprog=${MKDIRPROG-mkdir}
mvprog=${MVPROG-mv}
rmprog=${RMPROG-rm}
stripprog=${STRIPPROG-strip}
posix_glob='?'
initialize_posix_glob='
test "$posix_glob" != "?" || {
if (set -f) 2>/dev/null; then
posix_glob=
else
posix_glob=:
fi
}
'
posix_mkdir=
# Desired mode of installed file.
mode=0755
chgrpcmd=
chmodcmd=$chmodprog
chowncmd=
mvcmd=$mvprog
rmcmd="$rmprog -f"
stripcmd=
src=
dst=
dir_arg=
dst_arg=
copy_on_change=false
no_target_directory=
usage="\
Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
or: $0 [OPTION]... SRCFILES... DIRECTORY
or: $0 [OPTION]... -t DIRECTORY SRCFILES...
or: $0 [OPTION]... -d DIRECTORIES...
In the 1st form, copy SRCFILE to DSTFILE.
In the 2nd and 3rd, copy all SRCFILES to DIRECTORY.
In the 4th, create DIRECTORIES.
Options:
--help display this help and exit.
--version display version info and exit.
-c (ignored)
-C install only if different (preserve the last data modification time)
-d create directories instead of installing files.
-g GROUP $chgrpprog installed files to GROUP.
-m MODE $chmodprog installed files to MODE.
-o USER $chownprog installed files to USER.
-s $stripprog installed files.
-t DIRECTORY install into DIRECTORY.
-T report an error if DSTFILE is a directory.
Environment variables override the default commands:
CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG
RMPROG STRIPPROG
"
while test $# -ne 0; do
case $1 in
-c) ;;
-C) copy_on_change=true;;
-d) dir_arg=true;;
-g) chgrpcmd="$chgrpprog $2"
shift;;
--help) echo "$usage"; exit $?;;
-m) mode=$2
case $mode in
*' '* | *' '* | *'
'* | *'*'* | *'?'* | *'['*)
echo "$0: invalid mode: $mode" >&2
exit 1;;
esac
shift;;
-o) chowncmd="$chownprog $2"
shift;;
-s) stripcmd=$stripprog;;
-t) dst_arg=$2
# Protect names problematic for 'test' and other utilities.
case $dst_arg in
-* | [=\(\)!]) dst_arg=./$dst_arg;;
esac
shift;;
-T) no_target_directory=true;;
--version) echo "$0 $scriptversion"; exit $?;;
--) shift
break;;
-*) echo "$0: invalid option: $1" >&2
exit 1;;
*) break;;
esac
shift
done
if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then
# When -d is used, all remaining arguments are directories to create.
# When -t is used, the destination is already specified.
# Otherwise, the last argument is the destination. Remove it from $@.
for arg
do
if test -n "$dst_arg"; then
# $@ is not empty: it contains at least $arg.
set fnord "$@" "$dst_arg"
shift # fnord
fi
shift # arg
dst_arg=$arg
# Protect names problematic for 'test' and other utilities.
case $dst_arg in
-* | [=\(\)!]) dst_arg=./$dst_arg;;
esac
done
fi
if test $# -eq 0; then
if test -z "$dir_arg"; then
echo "$0: no input file specified." >&2
exit 1
fi
# It's OK to call 'install-sh -d' without argument.
# This can happen when creating conditional directories.
exit 0
fi
if test -z "$dir_arg"; then
do_exit='(exit $ret); exit $ret'
trap "ret=129; $do_exit" 1
trap "ret=130; $do_exit" 2
trap "ret=141; $do_exit" 13
trap "ret=143; $do_exit" 15
# Set umask so as not to create temps with too-generous modes.
# However, 'strip' requires both read and write access to temps.
case $mode in
# Optimize common cases.
*644) cp_umask=133;;
*755) cp_umask=22;;
*[0-7])
if test -z "$stripcmd"; then
u_plus_rw=
else
u_plus_rw='% 200'
fi
cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;;
*)
if test -z "$stripcmd"; then
u_plus_rw=
else
u_plus_rw=,u+rw
fi
cp_umask=$mode$u_plus_rw;;
esac
fi
for src
do
# Protect names problematic for 'test' and other utilities.
case $src in
-* | [=\(\)!]) src=./$src;;
esac
if test -n "$dir_arg"; then
dst=$src
dstdir=$dst
test -d "$dstdir"
dstdir_status=$?
else
# Waiting for this to be detected by the "$cpprog $src $dsttmp" command
# might cause directories to be created, which would be especially bad
# if $src (and thus $dsttmp) contains '*'.
if test ! -f "$src" && test ! -d "$src"; then
echo "$0: $src does not exist." >&2
exit 1
fi
if test -z "$dst_arg"; then
echo "$0: no destination specified." >&2
exit 1
fi
dst=$dst_arg
# If destination is a directory, append the input filename; won't work
# if double slashes aren't ignored.
if test -d "$dst"; then
if test -n "$no_target_directory"; then
echo "$0: $dst_arg: Is a directory" >&2
exit 1
fi
dstdir=$dst
dst=$dstdir/`basename "$src"`
dstdir_status=0
else
# Prefer dirname, but fall back on a substitute if dirname fails.
dstdir=`
(dirname "$dst") 2>/dev/null ||
expr X"$dst" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
X"$dst" : 'X\(//\)[^/]' \| \
X"$dst" : 'X\(//\)$' \| \
X"$dst" : 'X\(/\)' \| . 2>/dev/null ||
echo X"$dst" |
sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
s//\1/
q
}
/^X\(\/\/\)[^/].*/{
s//\1/
q
}
/^X\(\/\/\)$/{
s//\1/
q
}
/^X\(\/\).*/{
s//\1/
q
}
s/.*/./; q'
`
test -d "$dstdir"
dstdir_status=$?
fi
fi
obsolete_mkdir_used=false
if test $dstdir_status != 0; then
case $posix_mkdir in
'')
# Create intermediate dirs using mode 755 as modified by the umask.
# This is like FreeBSD 'install' as of 1997-10-28.
umask=`umask`
case $stripcmd.$umask in
# Optimize common cases.
*[2367][2367]) mkdir_umask=$umask;;
.*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;;
*[0-7])
mkdir_umask=`expr $umask + 22 \
- $umask % 100 % 40 + $umask % 20 \
- $umask % 10 % 4 + $umask % 2
`;;
*) mkdir_umask=$umask,go-w;;
esac
# With -d, create the new directory with the user-specified mode.
# Otherwise, rely on $mkdir_umask.
if test -n "$dir_arg"; then
mkdir_mode=-m$mode
else
mkdir_mode=
fi
posix_mkdir=false
case $umask in
*[123567][0-7][0-7])
# POSIX mkdir -p sets u+wx bits regardless of umask, which
# is incompatible with FreeBSD 'install' when (umask & 300) != 0.
;;
*)
# $RANDOM is not portable (e.g. dash); use it when possible to
# lower collision chance
tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
trap 'ret=$?; rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" 2>/dev/null; exit $ret' 0
# As "mkdir -p" follows symlinks and we work in /tmp possibly; so
# create the $tmpdir first (and fail if unsuccessful) to make sure
# that nobody tries to guess the $tmpdir name.
if (umask $mkdir_umask &&
$mkdirprog $mkdir_mode "$tmpdir" &&
exec $mkdirprog $mkdir_mode -p -- "$tmpdir/a/b") >/dev/null 2>&1
then
if test -z "$dir_arg" || {
# Check for POSIX incompatibilities with -m.
# HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
# other-writable bit of parent directory when it shouldn't.
# FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
test_tmpdir="$tmpdir/a"
ls_ld_tmpdir=`ls -ld "$test_tmpdir"`
case $ls_ld_tmpdir in
d????-?r-*) different_mode=700;;
d????-?--*) different_mode=755;;
*) false;;
esac &&
$mkdirprog -m$different_mode -p -- "$test_tmpdir" && {
ls_ld_tmpdir_1=`ls -ld "$test_tmpdir"`
test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
}
}
then posix_mkdir=:
fi
rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir"
else
# Remove any dirs left behind by ancient mkdir implementations.
rmdir ./$mkdir_mode ./-p ./-- "$tmpdir" 2>/dev/null
fi
trap '' 0;;
esac;;
esac
if
$posix_mkdir && (
umask $mkdir_umask &&
$doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir"
)
then :
else
# The umask is ridiculous, or mkdir does not conform to POSIX,
# or it failed possibly due to a race condition. Create the
# directory the slow way, step by step, checking for races as we go.
case $dstdir in
/*) prefix='/';;
[-=\(\)!]*) prefix='./';;
*) prefix='';;
esac
eval "$initialize_posix_glob"
oIFS=$IFS
IFS=/
$posix_glob set -f
set fnord $dstdir
shift
$posix_glob set +f
IFS=$oIFS
prefixes=
for d
do
test X"$d" = X && continue
prefix=$prefix$d
if test -d "$prefix"; then
prefixes=
else
if $posix_mkdir; then
(umask=$mkdir_umask &&
$doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break
# Don't fail if two instances are running concurrently.
test -d "$prefix" || exit 1
else
case $prefix in
*\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;;
*) qprefix=$prefix;;
esac
prefixes="$prefixes '$qprefix'"
fi
fi
prefix=$prefix/
done
if test -n "$prefixes"; then
# Don't fail if two instances are running concurrently.
(umask $mkdir_umask &&
eval "\$doit_exec \$mkdirprog $prefixes") ||
test -d "$dstdir" || exit 1
obsolete_mkdir_used=true
fi
fi
fi
if test -n "$dir_arg"; then
{ test -z "$chowncmd" || $doit $chowncmd "$dst"; } &&
{ test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } &&
{ test "$obsolete_mkdir_used$chowncmd$chgrpcmd" = false ||
test -z "$chmodcmd" || $doit $chmodcmd $mode "$dst"; } || exit 1
else
# Make a couple of temp file names in the proper directory.
dsttmp=$dstdir/_inst.$$_
rmtmp=$dstdir/_rm.$$_
# Trap to clean up those temp files at exit.
trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
# Copy the file name to the temp name.
(umask $cp_umask && $doit_exec $cpprog "$src" "$dsttmp") &&
# and set any options; do chmod last to preserve setuid bits.
#
# If any of these fail, we abort the whole thing. If we want to
# ignore errors from any of these, just make sure not to ignore
# errors from the above "$doit $cpprog $src $dsttmp" command.
#
{ test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } &&
{ test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } &&
{ test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } &&
{ test -z "$chmodcmd" || $doit $chmodcmd $mode "$dsttmp"; } &&
# If -C, don't bother to copy if it wouldn't change the file.
if $copy_on_change &&
old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` &&
new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` &&
eval "$initialize_posix_glob" &&
$posix_glob set -f &&
set X $old && old=:$2:$4:$5:$6 &&
set X $new && new=:$2:$4:$5:$6 &&
$posix_glob set +f &&
test "$old" = "$new" &&
$cmpprog "$dst" "$dsttmp" >/dev/null 2>&1
then
rm -f "$dsttmp"
else
# Rename the file to the real destination.
$doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null ||
# The rename failed, perhaps because mv can't rename something else
# to itself, or perhaps because mv is so ancient that it does not
# support -f.
{
# Now remove or move aside any old file at destination location.
# We try this two ways since rm can't unlink itself on some
# systems and the destination file might be busy for other
# reasons. In this case, the final cleanup might fail but the new
# file should still install successfully.
{
test ! -f "$dst" ||
$doit $rmcmd -f "$dst" 2>/dev/null ||
{ $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null &&
{ $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; }
} ||
{ echo "$0: cannot unlink or rename $dst" >&2
(exit 1); exit 1
}
} &&
# Now rename the file to the real destination.
$doit $mvcmd "$dsttmp" "$dst"
}
fi || exit 1
trap '' 0
fi
done
# Local variables:
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC"
# time-stamp-end: "; # UTC"
# End:
caspar-20170830/missing 0000755 0001751 0001751 00000015330 12753041535 011562 0000000 0000000 #! /bin/sh
# Common wrapper for a few potentially missing GNU programs.
scriptversion=2013-10-28.13; # UTC
# Copyright (C) 1996-2013 Free Software Foundation, Inc.
# Originally written by Fran,cois Pinard , 1996.
# 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, see .
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
if test $# -eq 0; then
echo 1>&2 "Try '$0 --help' for more information"
exit 1
fi
case $1 in
--is-lightweight)
# Used by our autoconf macros to check whether the available missing
# script is modern enough.
exit 0
;;
--run)
# Back-compat with the calling convention used by older automake.
shift
;;
-h|--h|--he|--hel|--help)
echo "\
$0 [OPTION]... PROGRAM [ARGUMENT]...
Run 'PROGRAM [ARGUMENT]...', returning a proper advice when this fails due
to PROGRAM being missing or too old.
Options:
-h, --help display this help and exit
-v, --version output version information and exit
Supported PROGRAM values:
aclocal autoconf autoheader autom4te automake makeinfo
bison yacc flex lex help2man
Version suffixes to PROGRAM as well as the prefixes 'gnu-', 'gnu', and
'g' are ignored when checking the name.
Send bug reports to ."
exit $?
;;
-v|--v|--ve|--ver|--vers|--versi|--versio|--version)
echo "missing $scriptversion (GNU Automake)"
exit $?
;;
-*)
echo 1>&2 "$0: unknown '$1' option"
echo 1>&2 "Try '$0 --help' for more information"
exit 1
;;
esac
# Run the given program, remember its exit status.
"$@"; st=$?
# If it succeeded, we are done.
test $st -eq 0 && exit 0
# Also exit now if we it failed (or wasn't found), and '--version' was
# passed; such an option is passed most likely to detect whether the
# program is present and works.
case $2 in --version|--help) exit $st;; esac
# Exit code 63 means version mismatch. This often happens when the user
# tries to use an ancient version of a tool on a file that requires a
# minimum version.
if test $st -eq 63; then
msg="probably too old"
elif test $st -eq 127; then
# Program was missing.
msg="missing on your system"
else
# Program was found and executed, but failed. Give up.
exit $st
fi
perl_URL=http://www.perl.org/
flex_URL=http://flex.sourceforge.net/
gnu_software_URL=http://www.gnu.org/software
program_details ()
{
case $1 in
aclocal|automake)
echo "The '$1' program is part of the GNU Automake package:"
echo "<$gnu_software_URL/automake>"
echo "It also requires GNU Autoconf, GNU m4 and Perl in order to run:"
echo "<$gnu_software_URL/autoconf>"
echo "<$gnu_software_URL/m4/>"
echo "<$perl_URL>"
;;
autoconf|autom4te|autoheader)
echo "The '$1' program is part of the GNU Autoconf package:"
echo "<$gnu_software_URL/autoconf/>"
echo "It also requires GNU m4 and Perl in order to run:"
echo "<$gnu_software_URL/m4/>"
echo "<$perl_URL>"
;;
esac
}
give_advice ()
{
# Normalize program name to check for.
normalized_program=`echo "$1" | sed '
s/^gnu-//; t
s/^gnu//; t
s/^g//; t'`
printf '%s\n' "'$1' is $msg."
configure_deps="'configure.ac' or m4 files included by 'configure.ac'"
case $normalized_program in
autoconf*)
echo "You should only need it if you modified 'configure.ac',"
echo "or m4 files included by it."
program_details 'autoconf'
;;
autoheader*)
echo "You should only need it if you modified 'acconfig.h' or"
echo "$configure_deps."
program_details 'autoheader'
;;
automake*)
echo "You should only need it if you modified 'Makefile.am' or"
echo "$configure_deps."
program_details 'automake'
;;
aclocal*)
echo "You should only need it if you modified 'acinclude.m4' or"
echo "$configure_deps."
program_details 'aclocal'
;;
autom4te*)
echo "You might have modified some maintainer files that require"
echo "the 'autom4te' program to be rebuilt."
program_details 'autom4te'
;;
bison*|yacc*)
echo "You should only need it if you modified a '.y' file."
echo "You may want to install the GNU Bison package:"
echo "<$gnu_software_URL/bison/>"
;;
lex*|flex*)
echo "You should only need it if you modified a '.l' file."
echo "You may want to install the Fast Lexical Analyzer package:"
echo "<$flex_URL>"
;;
help2man*)
echo "You should only need it if you modified a dependency" \
"of a man page."
echo "You may want to install the GNU Help2man package:"
echo "<$gnu_software_URL/help2man/>"
;;
makeinfo*)
echo "You should only need it if you modified a '.texi' file, or"
echo "any other file indirectly affecting the aspect of the manual."
echo "You might want to install the Texinfo package:"
echo "<$gnu_software_URL/texinfo/>"
echo "The spurious makeinfo call might also be the consequence of"
echo "using a buggy 'make' (AIX, DU, IRIX), in which case you might"
echo "want to install GNU make:"
echo "<$gnu_software_URL/make/>"
;;
*)
echo "You might have modified some files without having the proper"
echo "tools for further handling them. Check the 'README' file, it"
echo "often tells you about the needed prerequisites for installing"
echo "this package. You may also peek at any GNU archive site, in"
echo "case some other package contains this missing '$1' program."
;;
esac
}
give_advice "$1" | sed -e '1s/^/WARNING: /' \
-e '2,$s/^/ /' >&2
# Propagate the correct exit status (expected to be 127 for a program
# not found, 63 for a program that failed due to version mismatch).
exit $st
# Local variables:
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC"
# time-stamp-end: "; # UTC"
# End:
caspar-20170830/bootstrap 0000755 0001751 0001751 00000001723 13151515253 012123 0000000 0000000 #!/bin/sh -e
# This file is maintained at http://git.mdcc.cx/caspar
# bootstrap - script to bootstrap the distribution rolling engine
# This script is free software; you can distribute it and/or modify it
# under the terms of the GNU GPL. See the file COPYING.
# usage:
# ./bootstrap && ./configure && make distcheck
#
# this yields a tarball (and a .tar.bz2 too) which one can install doing
#
# $ tar zxf PACKAGENAME-*.tar.gz
# $ cd PACKAGENAME-*
# $ ./configure
# $ make
# # make install
# requirements:
# GNU autoconf, from e.g. ftp.gnu.org:/pub/gnu/autoconf/
# GNU automake, from e.g. ftp.cygnus.com:/pub/tromey/
# git2cl, from e.g. http://josefsson.org/git2cl/, and git
set -x
test -f ChangeLog || {
# we want no unprotected emailadresses in the cl
git log --pretty --numstat --summary | sed 's/<[^>][^>]*>//g' | \
git2cl > ChangeLog
}
test -f VERSION.m4 || ./setversion
AUTOMAKE=automake-1.14 ACLOCAL=aclocal-1.14 autoreconf --install --symlink
caspar-20170830/setversion 0000755 0001751 0001751 00000001461 13151515253 012306 0000000 0000000 # This file is maintained at http://git.mdcc.cx/caspar
# This script is free software; you can distribute it and/or modify it
# under the terms of the GNU GPL. See the file COPYING.
##if test -e stamp.day -a -e stamp.month -a -e stamp.year -a -e VERSION
##then
# user has overwritten autogenerated version
date=$( echo -n $(cat VERSION) )
# echo 'm4_define([CASPAR_VERSION], ['$date'])' > VERSION.m4
echo 'm4_define([AD1_VERSION], ['`date +%Y%m%d`'])' > VERSION.m4
##else
echo 'm4_define([AD1_VERSION], ['`date +%Y%m%d`'])' > VERSION.m4
# echo 'm4_define([CASPAR_VERSION], ['`date +%Y%m%d`'])' > VERSION.m4
# compatibility with other mdcc.cx/ad1810 packages
date +%Y%m%d > VERSION
# zoem stuff
date +%e > stamp.day
date +%b > stamp.month
date +%Y > stamp.year
##fi
caspar-20170830/stamp.day 0000644 0001751 0001751 00000000003 13151515270 011770 0000000 0000000 30
caspar-20170830/stamp.month 0000644 0001751 0001751 00000000007 13151515270 012344 0000000 0000000 авг
caspar-20170830/stamp.year 0000644 0001751 0001751 00000000005 13151515270 012155 0000000 0000000 2017
caspar-20170830/VERSION 0000644 0001751 0001751 00000000011 13151515270 011214 0000000 0000000 20170830
caspar-20170830/doc/ 0000755 0001751 0001751 00000000000 13151515336 011004 5 0000000 0000000 caspar-20170830/doc/Makefile.in 0000644 0001751 0001751 00000042761 13151515275 013005 0000000 0000000 # Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
@SET_MAKE@
# This script is free software; you can distribute it and/or modify it
# under the terms of the GNU GPL. See the file COPYING.
VPATH = @srcdir@
am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
*) echo "am__make_running_with_option: internal error: invalid" \
"target option '$${target_option-}' specified" >&2; \
exit 1;; \
esac; \
has_opt=no; \
sane_makeflags=$$MAKEFLAGS; \
if $(am__is_gnu_make); then \
sane_makeflags=$$MFLAGS; \
else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
bs=\\; \
sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
| sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
esac; \
fi; \
skip_next=no; \
strip_trailopt () \
{ \
flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
}; \
for flg in $$sane_makeflags; do \
test $$skip_next = yes && { skip_next=no; continue; }; \
case $$flg in \
*=*|--*) continue;; \
-*I) strip_trailopt 'I'; skip_next=yes;; \
-*I?*) strip_trailopt 'I';; \
-*O) strip_trailopt 'O'; skip_next=yes;; \
-*O?*) strip_trailopt 'O';; \
-*l) strip_trailopt 'l'; skip_next=yes;; \
-*l?*) strip_trailopt 'l';; \
-[dEDm]) skip_next=yes;; \
-[JT]) skip_next=yes;; \
esac; \
case $$flg in \
*$$target_option*) has_opt=yes; break;; \
esac; \
done; \
test $$has_opt = yes
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
subdir = doc
DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/VERSION.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
AM_V_P = $(am__v_P_@AM_V@)
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
am__v_P_0 = false
am__v_P_1 = :
AM_V_GEN = $(am__v_GEN_@AM_V@)
am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
am__v_GEN_0 = @echo " GEN " $@;
am__v_GEN_1 =
AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
SOURCES =
DIST_SOURCES =
am__can_run_installinfo = \
case $$AM_UPDATE_INFO_DIR in \
n|no|NO) false;; \
*) (install-info --version) >/dev/null 2>&1;; \
esac
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
*) f=$$p;; \
esac;
am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
am__install_max = 40
am__nobase_strip_setup = \
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
am__nobase_strip = \
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
am__nobase_list = $(am__nobase_strip_setup); \
for p in $$list; do echo "$$p $$p"; done | \
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
if (++n[$$2] == $(am__install_max)) \
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
END { for (dir in files) print dir, files[dir] }'
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
am__uninstall_files_from_dir = { \
test -z "$$files" \
|| { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
|| { echo " ( cd '$$dir' && rm -f" $$files ")"; \
$(am__cd) "$$dir" && rm -f $$files; }; \
}
man1dir = $(mandir)/man1
am__installdirs = "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(man7dir)" \
"$(DESTDIR)$(docdir)"
man7dir = $(mandir)/man7
NROFF = nroff
MANS = $(man_MANS)
DATA = $(doc_DATA)
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
PACKAGE = @PACKAGE_TARNAME@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRIP = @STRIP@
VERSION = @VERSION@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
am__leading_dot = @am__leading_dot@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build_alias = @build_alias@
builddir = @builddir@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = $(datadir)/doc/$(PACKAGE)
dvidir = @dvidir@
exec_prefix = @exec_prefix@
host_alias = @host_alias@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
TROFF = groff
ZOEM = zoem
# FIXME likely it's better NOT to ignore errors from tidy. if you do, building on a
# host which lacks tidy will fail terribly _and_ silently! Or: test here if tidy
# is installed...
TIDY = tidy -quiet -utf8
W3M = w3m
azms = casparize.azm csp_helper.azm caspar.azm caspar-typesetting.azm
typetargets = casparize.html casparize.ps casparize.txt csp_helper.html \
csp_helper.ps csp_helper.txt caspar.html caspar.ps \
caspar.txt caspar-typesetting.html caspar-typesetting.ps \
caspar-typesetting.txt
man1s = csp_install.1 csp_mkdircp.1 csp_scp_keep_mode.1 csp_sucp.1
manazms = casparize.1 csp_helper.1 caspar.7 caspar-typesetting.7
tmpfiles = casparize.zmr casparize.zmt caspar-typesetting.zmr \
caspar-typesetting.zmt caspar.zmr caspar.zmt csp_helper.zmr csp_helper.zmt
doc_DATA = $(typetargets) $(azms) ChangeLog.2002
man_MANS = $(man1s) $(manazms)
EXTRA_DIST = $(doc_DATA) $(man_MANS)
SUFFIXES = .1 .7 .azm .html .ps .txt
MAINTAINERCLEANFILES = $(manazms) $(typetargets) $(tmpfiles)
DISTCLEANFILES = $(typetargets)
all: all-am
.SUFFIXES:
.SUFFIXES: .1 .7 .azm .html .ps .txt
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu doc/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --gnu doc/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
*) \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(top_srcdir)/configure: $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
install-man1: $(man_MANS)
@$(NORMAL_INSTALL)
@list1=''; \
list2='$(man_MANS)'; \
test -n "$(man1dir)" \
&& test -n "`echo $$list1$$list2`" \
|| exit 0; \
echo " $(MKDIR_P) '$(DESTDIR)$(man1dir)'"; \
$(MKDIR_P) "$(DESTDIR)$(man1dir)" || exit 1; \
{ for i in $$list1; do echo "$$i"; done; \
if test -n "$$list2"; then \
for i in $$list2; do echo "$$i"; done \
| sed -n '/\.1[a-z]*$$/p'; \
fi; \
} | while read p; do \
if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; echo "$$p"; \
done | \
sed -e 'n;s,.*/,,;p;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \
-e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,' | \
sed 'N;N;s,\n, ,g' | { \
list=; while read file base inst; do \
if test "$$base" = "$$inst"; then list="$$list $$file"; else \
echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man1dir)/$$inst'"; \
$(INSTALL_DATA) "$$file" "$(DESTDIR)$(man1dir)/$$inst" || exit $$?; \
fi; \
done; \
for i in $$list; do echo "$$i"; done | $(am__base_list) | \
while read files; do \
test -z "$$files" || { \
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(man1dir)'"; \
$(INSTALL_DATA) $$files "$(DESTDIR)$(man1dir)" || exit $$?; }; \
done; }
uninstall-man1:
@$(NORMAL_UNINSTALL)
@list=''; test -n "$(man1dir)" || exit 0; \
files=`{ for i in $$list; do echo "$$i"; done; \
l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \
sed -n '/\.1[a-z]*$$/p'; \
} | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \
-e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
dir='$(DESTDIR)$(man1dir)'; $(am__uninstall_files_from_dir)
install-man7: $(man_MANS)
@$(NORMAL_INSTALL)
@list1=''; \
list2='$(man_MANS)'; \
test -n "$(man7dir)" \
&& test -n "`echo $$list1$$list2`" \
|| exit 0; \
echo " $(MKDIR_P) '$(DESTDIR)$(man7dir)'"; \
$(MKDIR_P) "$(DESTDIR)$(man7dir)" || exit 1; \
{ for i in $$list1; do echo "$$i"; done; \
if test -n "$$list2"; then \
for i in $$list2; do echo "$$i"; done \
| sed -n '/\.7[a-z]*$$/p'; \
fi; \
} | while read p; do \
if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; echo "$$p"; \
done | \
sed -e 'n;s,.*/,,;p;h;s,.*\.,,;s,^[^7][0-9a-z]*$$,7,;x' \
-e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,' | \
sed 'N;N;s,\n, ,g' | { \
list=; while read file base inst; do \
if test "$$base" = "$$inst"; then list="$$list $$file"; else \
echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man7dir)/$$inst'"; \
$(INSTALL_DATA) "$$file" "$(DESTDIR)$(man7dir)/$$inst" || exit $$?; \
fi; \
done; \
for i in $$list; do echo "$$i"; done | $(am__base_list) | \
while read files; do \
test -z "$$files" || { \
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(man7dir)'"; \
$(INSTALL_DATA) $$files "$(DESTDIR)$(man7dir)" || exit $$?; }; \
done; }
uninstall-man7:
@$(NORMAL_UNINSTALL)
@list=''; test -n "$(man7dir)" || exit 0; \
files=`{ for i in $$list; do echo "$$i"; done; \
l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \
sed -n '/\.7[a-z]*$$/p'; \
} | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^7][0-9a-z]*$$,7,;x' \
-e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
dir='$(DESTDIR)$(man7dir)'; $(am__uninstall_files_from_dir)
install-docDATA: $(doc_DATA)
@$(NORMAL_INSTALL)
@list='$(doc_DATA)'; test -n "$(docdir)" || list=; \
if test -n "$$list"; then \
echo " $(MKDIR_P) '$(DESTDIR)$(docdir)'"; \
$(MKDIR_P) "$(DESTDIR)$(docdir)" || exit 1; \
fi; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(docdir)'"; \
$(INSTALL_DATA) $$files "$(DESTDIR)$(docdir)" || exit $$?; \
done
uninstall-docDATA:
@$(NORMAL_UNINSTALL)
@list='$(doc_DATA)'; test -n "$(docdir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
dir='$(DESTDIR)$(docdir)'; $(am__uninstall_files_from_dir)
tags TAGS:
ctags CTAGS:
cscope cscopelist:
distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
dist_files=`for file in $$list; do echo $$file; done | \
sed -e "s|^$$srcdirstrip/||;t" \
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
check-am: all-am
check: check-am
all-am: Makefile $(MANS) $(DATA)
installdirs:
for dir in "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(man7dir)" "$(DESTDIR)$(docdir)"; do \
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
done
install: install-am
install-exec: install-exec-am
install-data: install-data-am
uninstall: uninstall-am
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
installcheck: installcheck-am
install-strip:
if test -z '$(STRIP)'; then \
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
install; \
else \
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
fi
mostlyclean-generic:
clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
-test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
clean: clean-am
clean-am: clean-generic mostlyclean-am
distclean: distclean-am
-rm -f Makefile
distclean-am: clean-am distclean-generic
dvi: dvi-am
dvi-am:
html: html-am
html-am:
info: info-am
info-am:
install-data-am: install-docDATA install-man
install-dvi: install-dvi-am
install-dvi-am:
install-exec-am:
install-html: install-html-am
install-html-am:
install-info: install-info-am
install-info-am:
install-man: install-man1 install-man7
install-pdf: install-pdf-am
install-pdf-am:
install-ps: install-ps-am
install-ps-am:
installcheck-am:
maintainer-clean: maintainer-clean-am
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-am
mostlyclean-am: mostlyclean-generic
pdf: pdf-am
pdf-am:
ps: ps-am
ps-am:
uninstall-am: uninstall-docDATA uninstall-man
uninstall-man: uninstall-man1 uninstall-man7
.MAKE: install-am install-strip
.PHONY: all all-am check check-am clean clean-generic cscopelist-am \
ctags-am distclean distclean-generic distdir dvi dvi-am html \
html-am info info-am install install-am install-data \
install-data-am install-docDATA install-dvi install-dvi-am \
install-exec install-exec-am install-html install-html-am \
install-info install-info-am install-man install-man1 \
install-man7 install-pdf install-pdf-am install-ps \
install-ps-am install-strip installcheck installcheck-am \
installdirs maintainer-clean maintainer-clean-generic \
mostlyclean mostlyclean-generic pdf pdf-am ps ps-am tags-am \
uninstall uninstall-am uninstall-docDATA uninstall-man \
uninstall-man1 uninstall-man7
.azm.1:
$(ZOEM) -d roff -i $< -o $@
$(ZOEM) -d roff -i $< -o $@
.azm.7:
$(ZOEM) -d roff -i $< -o $@
$(ZOEM) -d roff -i $< -o $@
.7.ps:
$(TROFF) -man $< > $@
.1.ps:
$(TROFF) -man $< > $@
.azm.html:
$(ZOEM) -d html -i $< -o $@
$(ZOEM) -d html -i $< -o $@
-$(TIDY) -e $@
.html.txt:
$(W3M) -dump $< > $@
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
caspar-20170830/doc/Makefile.am 0000644 0001751 0001751 00000004637 13151515253 012770 0000000 0000000 ## Process this file with automake to produce Makefile.in
## This file is maintained at http://git.mdcc.cx/caspar
# This script is free software; you can distribute it and/or modify it
# under the terms of the GNU GPL. See the file COPYING.
## Copyright (C) 2003, 2004, 2005, 2006 Joost van Baal
## based upon work by Stijn van Dongen
TROFF = groff
## Zoem is a an interpretive macro language, for creating mark-up languages, by
## Stijn van Dongen. Information about zoem can be found on the zoem webpage at
## http://micans.org/zoem/ .
ZOEM = zoem
## tidy is a HTML syntax checker and reformatter, available from
## http://www.w3.org/People/Raggett/tidy/ , by Dave Raggett
# FIXME likely it's better NOT to ignore errors from tidy. if you do, building on a
# host which lacks tidy will fail terribly _and_ silently! Or: test here if tidy
# is installed...
TIDY = tidy -quiet -utf8
## http://w3m.sourceforge.net/
## w3m is a text-based web browser, which can be used as a text formatting tool
## which typesets HTML into plain text.
W3M = w3m
PACKAGE = @PACKAGE_TARNAME@
docdir = $(datadir)/doc/$(PACKAGE)
azms = casparize.azm csp_helper.azm caspar.azm caspar-typesetting.azm
typetargets = casparize.html casparize.ps casparize.txt csp_helper.html \
csp_helper.ps csp_helper.txt caspar.html caspar.ps \
caspar.txt caspar-typesetting.html caspar-typesetting.ps \
caspar-typesetting.txt
man1s = csp_install.1 csp_mkdircp.1 csp_scp_keep_mode.1 csp_sucp.1
manazms = casparize.1 csp_helper.1 caspar.7 caspar-typesetting.7
tmpfiles = casparize.zmr casparize.zmt caspar-typesetting.zmr \
caspar-typesetting.zmt caspar.zmr caspar.zmt csp_helper.zmr csp_helper.zmt
doc_DATA = $(typetargets) $(azms) ChangeLog.2002
man_MANS = $(man1s) $(manazms)
EXTRA_DIST = $(doc_DATA) $(man_MANS)
SUFFIXES = .1 .7 .azm .html .ps .txt
.azm.1:
$(ZOEM) -d roff -i $< -o $@
$(ZOEM) -d roff -i $< -o $@
.azm.7:
$(ZOEM) -d roff -i $< -o $@
$(ZOEM) -d roff -i $< -o $@
.7.ps:
$(TROFF) -man $< > $@
.1.ps:
$(TROFF) -man $< > $@
.azm.html:
$(ZOEM) -d html -i $< -o $@
$(ZOEM) -d html -i $< -o $@
-$(TIDY) -e $@
## $(TIDY) -e $@
## alternative, one could call something like
## groff -man -Tascii $< > $@
## for generating ascii directly from roff.
## However, this generates output which uses the boldface-^H trick
.html.txt:
$(W3M) -dump $< > $@
MAINTAINERCLEANFILES = $(manazms) $(typetargets) $(tmpfiles)
DISTCLEANFILES = $(typetargets)
caspar-20170830/doc/casparize.html 0000644 0001751 0001751 00000013377 13151515314 013602 0000000 0000000
casparize
30 авг 2017
casparize
20170830
NAME
casparize — Set up caspar Makefile in a new directory
SYNOPSIS
casparize
dir (/path/to/config/dir)
casparize
file (/path/to/config/dir/file)
DESCRIPTION
casparize creates a new configuration working directory in your current
working directory, sets up a Makefile for caspar(7) in
this new directory,
and optionally copies an original configuration file from its original
system place to the newly created configuration working directory.
USAGE
You typically use casparize when you already have created the root
configuration working directory with its include directory and install.mk
Caspar include file. By analysing your current working directory and the
configuration directory path you give on the command line, casparize can
deduce the contents of the Makefile in the newly created configuration
working directory. It creates the new directory, creates the correct
Makefile, and optionally copies the given configuration file in the new
directory, ready for its first version commit.
EXAMPLES
A typical example:
$ cd <svn>/etc
$ casparize /etc/postfix/main.cf
creates the directory <svn>/etc/postfix, creates <svn>/etc/postfix/Makefile
including the proper content, and copies /etc/postfix/main.cf into
<svn>/etc/postfix/main.cf. You can now directly add and commit the new
directory.
BUGS
Non known at this moment.
AUTHOR
Jeroen Hoppenbrouwers
SEE ALSO
caspar(7)
The caspar homepage is at http://mdcc.cx/caspar/ .
caspar-20170830/doc/casparize.ps 0000644 0001751 0001751 00000021326 13151515315 013252 0000000 0000000 %!PS-Adobe-3.0
%%Creator: groff version 1.22.2
%%CreationDate: Wed Aug 30 13:00:29 2017
%%DocumentNeededResources: font Times-Roman
%%+ font Times-Bold
%%+ font Times-Italic
%%+ font Courier
%%DocumentSuppliedResources: procset grops 1.22 2
%%Pages: 1
%%PageOrder: Ascend
%%DocumentMedia: Default 595 842 0 () ()
%%Orientation: Portrait
%%EndComments
%%BeginDefaults
%%PageMedia: Default
%%EndDefaults
%%BeginProlog
%%BeginResource: procset grops 1.22 2
%!PS-Adobe-3.0 Resource-ProcSet
/setpacking where{
pop
currentpacking
true setpacking
}if
/grops 120 dict dup begin
/SC 32 def
/A/show load def
/B{0 SC 3 -1 roll widthshow}bind def
/C{0 exch ashow}bind def
/D{0 exch 0 SC 5 2 roll awidthshow}bind def
/E{0 rmoveto show}bind def
/F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def
/G{0 rmoveto 0 exch ashow}bind def
/H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/I{0 exch rmoveto show}bind def
/J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def
/K{0 exch rmoveto 0 exch ashow}bind def
/L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/M{rmoveto show}bind def
/N{rmoveto 0 SC 3 -1 roll widthshow}bind def
/O{rmoveto 0 exch ashow}bind def
/P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/Q{moveto show}bind def
/R{moveto 0 SC 3 -1 roll widthshow}bind def
/S{moveto 0 exch ashow}bind def
/T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/SF{
findfont exch
[exch dup 0 exch 0 exch neg 0 0]makefont
dup setfont
[exch/setfont cvx]cvx bind def
}bind def
/MF{
findfont
[5 2 roll
0 3 1 roll
neg 0 0]makefont
dup setfont
[exch/setfont cvx]cvx bind def
}bind def
/level0 0 def
/RES 0 def
/PL 0 def
/LS 0 def
/MANUAL{
statusdict begin/manualfeed true store end
}bind def
/PLG{
gsave newpath clippath pathbbox grestore
exch pop add exch pop
}bind def
/BP{
/level0 save def
1 setlinecap
1 setlinejoin
DEFS/BPhook known{DEFS begin BPhook end}if
72 RES div dup scale
LS{
90 rotate
}{
0 PL translate
}ifelse
1 -1 scale
}bind def
/EP{
level0 restore
showpage
}def
/DA{
newpath arcn stroke
}bind def
/SN{
transform
.25 sub exch .25 sub exch
round .25 add exch round .25 add exch
itransform
}bind def
/DL{
SN
moveto
SN
lineto stroke
}bind def
/DC{
newpath 0 360 arc closepath
}bind def
/TM matrix def
/DE{
TM currentmatrix pop
translate scale newpath 0 0 .5 0 360 arc closepath
TM setmatrix
}bind def
/RC/rcurveto load def
/RL/rlineto load def
/ST/stroke load def
/MT/moveto load def
/CL/closepath load def
/Fr{
setrgbcolor fill
}bind def
/setcmykcolor where{
pop
/Fk{
setcmykcolor fill
}bind def
}if
/Fg{
setgray fill
}bind def
/FL/fill load def
/LW/setlinewidth load def
/Cr/setrgbcolor load def
/setcmykcolor where{
pop
/Ck/setcmykcolor load def
}if
/Cg/setgray load def
/RE{
findfont
dup maxlength 1 index/FontName known not{1 add}if dict begin
{
1 index/FID ne
2 index/UniqueID ne
and
{def}{pop pop}ifelse
}forall
/Encoding exch def
dup/FontName exch def
currentdict end definefont pop
}bind def
/DEFS 0 def
/EBEGIN{
moveto
DEFS begin
}bind def
/EEND/end load def
/CNT 0 def
/level1 0 def
/PBEGIN{
/level1 save def
translate
div 3 1 roll div exch scale
neg exch neg exch translate
0 setgray
0 setlinecap
1 setlinewidth
0 setlinejoin
10 setmiterlimit
[]0 setdash
/setstrokeadjust where{
pop
false setstrokeadjust
}if
/setoverprint where{
pop
false setoverprint
}if
newpath
/CNT countdictstack def
userdict begin
/showpage{}def
/setpagedevice{}def
mark
}bind def
/PEND{
cleartomark
countdictstack CNT sub{end}repeat
level1 restore
}bind def
end def
/setpacking where{
pop
setpacking
}if
%%EndResource
%%EndProlog
%%BeginSetup
%%BeginFeature: *PageSize Default
<< /PageSize [ 595 842 ] /ImagingBBox null >> setpagedevice
%%EndFeature
%%IncludeResource: font Times-Roman
%%IncludeResource: font Times-Bold
%%IncludeResource: font Times-Italic
%%IncludeResource: font Courier
grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72
def/PL 841.89 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron
/Zcaron/scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent
/ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen
/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon
/semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O
/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex
/underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y
/z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft
/guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl
/endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut
/dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash
/quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen
/brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft
/logicalnot/minus/registered/macron/degree/plusminus/twosuperior
/threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior
/ordmasculine/guilsinglright/onequarter/onehalf/threequarters
/questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE
/Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex
/Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis
/multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn
/germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla
/egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis
/eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash
/ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def
/Courier@0 ENC0/Courier RE/Times-Italic@0 ENC0/Times-Italic RE
/Times-Bold@0 ENC0/Times-Bold RE/Times-Roman@0 ENC0/Times-Roman RE
%%EndSetup
%%Page: 1 1
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF 137.915(casparize\(1\) USER)20 48 R 140.415
(COMMANDS casparize\(1\))2.5 F/F1 10.95/Times-Bold@0 SF -.219(NA)20 84 S
(ME).219 E F0(casparize \255 Set up)100 96 Q/F2 10/Times-Bold@0 SF
(caspar)2.5 E F0(Mak)2.5 E(e\214le in a ne)-.1 E 2.5(wd)-.25 G(irectory)
-2.5 E F1(SYNOPSIS)20 112.8 Q F2(casparize dir)100 124.8 Q F0(\()2.5 E
/F3 10/Times-Italic@0 SF(/path/to/con\214g/dir)A F0(\))A F2
(casparize \214le)100 148.8 Q F0(\()2.5 E F3
(/path/to/con\214g/dir/\214le)A F0(\))A F1(DESCRIPTION)20 165.6 Q F2
(casparize)100 177.6 Q F0 .511(creates a ne)3.011 F 3.011(wc)-.25 G .511
(on\214guration w)-3.011 F .511(orking directory in your current w)-.1 F
.51(orking directory)-.1 F 3.01(,s)-.65 G(ets)-3.01 E .031(up a Mak)100
189.6 R .031(e\214le for)-.1 F F2(caspar\(7\))2.531 E F0 .031
(in this ne)2.531 F 2.531(wd)-.25 G(irectory)-2.531 E 2.532(,a)-.65 G
.032(nd optionally copies an original con\214guration)-2.532 F
(\214le from its original system place to the ne)100 201.6 Q
(wly created con\214guration w)-.25 E(orking directory.)-.1 E F1(USA)20
218.4 Q(GE)-.602 E F0 -1.1(Yo)100 230.4 S 4.599(ut)1.1 G 2.099
(ypically use)-4.599 F F2(casparize)4.599 E F0 2.098
(when you already ha)4.599 F 2.398 -.15(ve c)-.2 H 2.098
(reated the root con\214guration w).15 F(orking)-.1 E .255(directory wi\
th its include directory and install.mk Caspar include \214le. By analy\
sing your current)100 242.4 R -.1(wo)100 254.4 S .36
(rking directory and the con\214guration directory path you gi).1 F .66
-.15(ve o)-.25 H 2.86(nt).15 G .36(he command line, casparize)-2.86 F
.351(can deduce the contents of the Mak)100 266.4 R .351
(e\214le in the ne)-.1 F .352(wly created con\214guration w)-.25 F .352
(orking directory. It)-.1 F .581(creates the ne)100 278.4 R 3.081(wd)
-.25 G(irectory)-3.081 E 3.081(,c)-.65 G .581(reates the correct Mak)
-3.081 F .581(e\214le, and optionally copies the gi)-.1 F -.15(ve)-.25 G
3.08(nc).15 G(on\214gu-)-3.08 E(ration \214le in the ne)100 290.4 Q 2.5
(wd)-.25 G(irectory)-2.5 E 2.5(,r)-.65 G(eady for its \214rst v)-2.5 E
(ersion commit.)-.15 E F1(EXAMPLES)20 307.2 Q F0 2.5(At)100 319.2 S
(ypical e)-2.5 E(xample:)-.15 E/F4 10/Courier@0 SF 6($c)112 355.2 S 6
(d<)-6 G(svn>/etc)-6 E 6($c)112 367.2 S(asparize /etc/postfix/main.cf)-6
E F0 1.011(creates the directory /etc/post\214x, creates /etc\
/post\214x/Mak)100 391.2 R 1.012(e\214le including the proper)-.1 F .088
(content, and copies /etc/post\214x/main.cf into /etc/post\214x/ma\
in.cf. Y)100 403.2 R .088(ou can no)-1.1 F 2.588(wd)-.25 G .088
(irectly add)-2.588 F(and commit the ne)100 415.2 Q 2.5(wd)-.25 G
(irectory.)-2.5 E F1 -.11(BU)20 432 S(GS).11 E F0(Non kno)100 444 Q
(wn at this moment.)-.25 E F1 -.548(AU)20 460.8 S(THOR).548 E F0
(Jeroen Hoppenbrouwers)100 472.8 Q F1(SEE ALSO)20 489.6 Q F2
(caspar\(7\))100 501.6 Q F0
(The caspar homepage is at http://mdcc.cx/caspar/ .)2.5 E
(casparize 20170830)20 768 Q<333020d0b0d0b2d0b32032303137>120.97 E(1)
195.67 E 0 Cg EP
%%Trailer
end
%%EOF
caspar-20170830/doc/casparize.txt 0000644 0001751 0001751 00000003042 13151515315 013442 0000000 0000000 30 авг 2017 casparize 20170830
1.
NAME
2.
SYNOPSIS
3.
DESCRIPTION
4.
USAGE
5.
EXAMPLES
6.
BUGS
7.
AUTHOR
8.
SEE ALSO
NAME
casparize — Set up caspar Makefile in a new directory
SYNOPSIS
casparize dir (/path/to/config/dir)
casparize file (/path/to/config/dir/file)
DESCRIPTION
casparize creates a new configuration working directory in your current working
directory, sets up a Makefile for caspar(7) in this new directory, and
optionally copies an original configuration file from its original system place
to the newly created configuration working directory.
USAGE
You typically use casparize when you already have created the root
configuration working directory with its include directory and install.mk
Caspar include file. By analysing your current working directory and the
configuration directory path you give on the command line, casparize can deduce
the contents of the Makefile in the newly created configuration working
directory. It creates the new directory, creates the correct Makefile, and
optionally copies the given configuration file in the new directory, ready for
its first version commit.
EXAMPLES
A typical example:
$ cd /etc $ casparize /etc/postfix/main.cf
creates the directory /etc/postfix, creates /etc/postfix/Makefile
including the proper content, and copies /etc/postfix/main.cf into /etc/
postfix/main.cf. You can now directly add and commit the new directory.
BUGS
Non known at this moment.
AUTHOR
Jeroen Hoppenbrouwers
SEE ALSO
caspar(7) The caspar homepage is at http://mdcc.cx/caspar/ .
caspar-20170830/doc/csp_helper.html 0000644 0001751 0001751 00000022761 13151515315 013743 0000000 0000000
csp_helper
30 авг 2017
csp_helper
20170830
NAME
csp_helper — A collection of caspar helper scripts
SYNOPSIS
csp_install dir (directory) file (file)
csp_mkdircp dir (directory) file (file)
csp_scp_keep_mode h ([user@]host) dir (directory) file (file)
csp_sucp
h ([user@]host)
dir (directory)
file (file)
DESCRIPTION
The scripts csp_install, csp_mkdircp, csp_scp_keep_mode and csp_sucp are helpers for
caspar(7). These scripts typically are not invoked directly,
but via a Makefile which uses caspar. See the notes on csp_PUSH in
caspar(7) for information on how to link csp_install,
csp_scp_keep_mode and csp_sucp to caspar.
install DESCRIPTION
csp_install creates the required directory (if needed) and installs the file,
preserving timestamps. It uses install(1).
install EXAMPLES
csp_INSTALL_OPTIONS='--owner=www-data --group=www-data' \
csp_INSTALL_MODE=ugo=r \
csp_install /srv/www index.html
csp_INSTALL_MODE=u=rwx,go= csp_install /usr/local/sbin mkpasswd
install ENVIRONMENT
csp_install honors csp_INSTALL_OPTIONS and csp_INSTALL_MODE (default is
u=rw,go=r).
mkdircp DESCRIPTION
csp_mkdircp calls mkdir(1) and cp(1).
csp_mkdircp is used like csp_CP. use csp_mkdircp if you frequently have to
bootstrap installation on a fresh system, on which needed directories don't
exist yet. csp_mkdircp makes sure the target directory exists before calling
cp(1), by calling mkdir -p first.
scp_keep_mode DESCRIPTION
csp_scp_keep_mode uses ssh to copy a file to a remote host, keeping its file
permission mode. The trick used is a combination of mktemp(1) and mv(1).
Useful if you'd like to be sure a file gets installed e.g. group writable,
without fiddling with permission bits on the remote host.
scp_keep_mode EXAMPLE
chmod g+w rc
csp_scp_keep_mode root@gandalf /etc/uruk rc
scp_keep_mode ENVIRONMENT
csp_scp_keep_mode honors csp_SSH ("ssh" by default).
sucp DESCRIPTION
csp_sucp calls tar(1) from within sudo(1) from within ssh(1). This allows one
to copy files to accounts on hosts one can only reach by calling sudo on the
ssh-reachable remote host.
Typically, one wants to install a root-owned file, but one does not want to
allow access to the root-account directly from ssh. Typically sudo is used as
an extra line of defense.
NB: if your sudo prompts for a password, be sure to have line
Defaults !tty_tickets
in your sudoers file: we first call sudo -v, than we call sudo to write the
data. Since we use ssh to get to the host, we'll use a different tty for both
sudo calls.
sucp EXAMPLES
Some examples:
csp_sucp rms@bilbo /etc fstab
csp_sucp monty-python commit/ trailer.txt
AUTHOR
Joost van Baal-Ilić
SEE ALSO
caspar(7)
The caspar homepage is at http://mdcc.cx/caspar/ .
caspar-20170830/doc/csp_helper.ps 0000644 0001751 0001751 00000026450 13151515315 013420 0000000 0000000 %!PS-Adobe-3.0
%%Creator: groff version 1.22.2
%%CreationDate: Wed Aug 30 13:00:29 2017
%%DocumentNeededResources: font Times-Roman
%%+ font Times-Bold
%%+ font Times-Italic
%%+ font Courier
%%DocumentSuppliedResources: procset grops 1.22 2
%%Pages: 2
%%PageOrder: Ascend
%%DocumentMedia: Default 595 842 0 () ()
%%Orientation: Portrait
%%EndComments
%%BeginDefaults
%%PageMedia: Default
%%EndDefaults
%%BeginProlog
%%BeginResource: procset grops 1.22 2
%!PS-Adobe-3.0 Resource-ProcSet
/setpacking where{
pop
currentpacking
true setpacking
}if
/grops 120 dict dup begin
/SC 32 def
/A/show load def
/B{0 SC 3 -1 roll widthshow}bind def
/C{0 exch ashow}bind def
/D{0 exch 0 SC 5 2 roll awidthshow}bind def
/E{0 rmoveto show}bind def
/F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def
/G{0 rmoveto 0 exch ashow}bind def
/H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/I{0 exch rmoveto show}bind def
/J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def
/K{0 exch rmoveto 0 exch ashow}bind def
/L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/M{rmoveto show}bind def
/N{rmoveto 0 SC 3 -1 roll widthshow}bind def
/O{rmoveto 0 exch ashow}bind def
/P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/Q{moveto show}bind def
/R{moveto 0 SC 3 -1 roll widthshow}bind def
/S{moveto 0 exch ashow}bind def
/T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/SF{
findfont exch
[exch dup 0 exch 0 exch neg 0 0]makefont
dup setfont
[exch/setfont cvx]cvx bind def
}bind def
/MF{
findfont
[5 2 roll
0 3 1 roll
neg 0 0]makefont
dup setfont
[exch/setfont cvx]cvx bind def
}bind def
/level0 0 def
/RES 0 def
/PL 0 def
/LS 0 def
/MANUAL{
statusdict begin/manualfeed true store end
}bind def
/PLG{
gsave newpath clippath pathbbox grestore
exch pop add exch pop
}bind def
/BP{
/level0 save def
1 setlinecap
1 setlinejoin
DEFS/BPhook known{DEFS begin BPhook end}if
72 RES div dup scale
LS{
90 rotate
}{
0 PL translate
}ifelse
1 -1 scale
}bind def
/EP{
level0 restore
showpage
}def
/DA{
newpath arcn stroke
}bind def
/SN{
transform
.25 sub exch .25 sub exch
round .25 add exch round .25 add exch
itransform
}bind def
/DL{
SN
moveto
SN
lineto stroke
}bind def
/DC{
newpath 0 360 arc closepath
}bind def
/TM matrix def
/DE{
TM currentmatrix pop
translate scale newpath 0 0 .5 0 360 arc closepath
TM setmatrix
}bind def
/RC/rcurveto load def
/RL/rlineto load def
/ST/stroke load def
/MT/moveto load def
/CL/closepath load def
/Fr{
setrgbcolor fill
}bind def
/setcmykcolor where{
pop
/Fk{
setcmykcolor fill
}bind def
}if
/Fg{
setgray fill
}bind def
/FL/fill load def
/LW/setlinewidth load def
/Cr/setrgbcolor load def
/setcmykcolor where{
pop
/Ck/setcmykcolor load def
}if
/Cg/setgray load def
/RE{
findfont
dup maxlength 1 index/FontName known not{1 add}if dict begin
{
1 index/FID ne
2 index/UniqueID ne
and
{def}{pop pop}ifelse
}forall
/Encoding exch def
dup/FontName exch def
currentdict end definefont pop
}bind def
/DEFS 0 def
/EBEGIN{
moveto
DEFS begin
}bind def
/EEND/end load def
/CNT 0 def
/level1 0 def
/PBEGIN{
/level1 save def
translate
div 3 1 roll div exch scale
neg exch neg exch translate
0 setgray
0 setlinecap
1 setlinewidth
0 setlinejoin
10 setmiterlimit
[]0 setdash
/setstrokeadjust where{
pop
false setstrokeadjust
}if
/setoverprint where{
pop
false setoverprint
}if
newpath
/CNT countdictstack def
userdict begin
/showpage{}def
/setpagedevice{}def
mark
}bind def
/PEND{
cleartomark
countdictstack CNT sub{end}repeat
level1 restore
}bind def
end def
/setpacking where{
pop
setpacking
}if
%%EndResource
%%EndProlog
%%BeginSetup
%%BeginFeature: *PageSize Default
<< /PageSize [ 595 842 ] /ImagingBBox null >> setpagedevice
%%EndFeature
%%IncludeResource: font Times-Roman
%%IncludeResource: font Times-Bold
%%IncludeResource: font Times-Italic
%%IncludeResource: font Courier
grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72
def/PL 841.89 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron
/Zcaron/scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent
/ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen
/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon
/semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O
/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex
/underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y
/z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft
/guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl
/endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut
/dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash
/quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen
/brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft
/logicalnot/minus/registered/macron/degree/plusminus/twosuperior
/threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior
/ordmasculine/guilsinglright/onequarter/onehalf/threequarters
/questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE
/Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex
/Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis
/multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn
/germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla
/egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis
/eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash
/ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def
/Courier@0 ENC0/Courier RE/Times-Italic@0 ENC0/Times-Italic RE
/Times-Bold@0 ENC0/Times-Bold RE/Times-Roman@0 ENC0/Times-Roman RE
%%EndSetup
%%Page: 1 1
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF 131.795(csp_helper\(1\) USER)20 48 R 134.295
(COMMANDS csp_helper\(1\))2.5 F/F1 10.95/Times-Bold@0 SF -.219(NA)20 84
S(ME).219 E F0(csp_helper \255 A collection of caspar helper scripts)100
96 Q F1(SYNOPSIS)20 112.8 Q/F2 10/Times-Bold@0 SF(csp_install dir)100
124.8 Q F0(\()2.5 E/F3 10/Times-Italic@0 SF(dir)A(ectory)-.37 E F0(\))A
F2(\214le)2.5 E F0(\()2.5 E F3(\214le)A F0(\))A F2(csp_mkdir)100 148.8 Q
(cp dir)-.18 E F0(\()2.5 E F3(dir)A(ectory)-.37 E F0(\))A F2(\214le)2.5
E F0(\()2.5 E F3(\214le)A F0(\))A F2(csp_scp_k)100 172.8 Q(eep_mode h)
-.1 E F0(\()2.5 E F3([user@]host)A F0(\))A F2(dir)2.5 E F0(\()2.5 E F3
(dir)A(ectory)-.37 E F0(\))A F2(\214le)2.5 E F0(\()2.5 E F3(\214le)A F0
(\))A F2(csp_sucp h)100 196.8 Q F0(\()2.5 E F3([user@]host)A F0(\))A F2
(dir)2.5 E F0(\()2.5 E F3(dir)A(ectory)-.37 E F0(\))A F2(\214le)2.5 E F0
(\()2.5 E F3(\214le)A F0(\))A F1(DESCRIPTION)20 213.6 Q F0 .775
(The scripts)100 225.6 R F2(csp_install)3.275 E F0(,)A F2(csp_mkdir)
3.275 E(cp)-.18 E F0(,)A F2(csp_scp_k)3.275 E(eep_mode)-.1 E F0(and)
3.275 E F2(csp_sucp)3.275 E F0 .775(are helpers for)3.275 F F2(cas-)
3.275 E(par\(7\))100 237.6 Q F0 3.411(.T)C .911
(hese scripts typically are not in)-3.411 F -.2(vo)-.4 G -.1(ke).2 G
3.411(dd).1 G(irectly)-3.411 E 3.411(,b)-.65 G .912(ut via a Mak)-3.611
F .912(e\214le which uses)-.1 F F2(caspar)3.412 E F0(.)A 3.798
(See the notes on csp_PUSH in)100 249.6 R F2(caspar\(7\))6.298 E F0
3.798(for information on ho)6.298 F 6.297(wt)-.25 G 6.297(ol)-6.297 G
(ink)-6.297 E F2(csp_install)6.297 E F0(,)A F2(csp_scp_k)100 261.6 Q
(eep_mode)-.1 E F0(and)2.5 E F2(csp_sucp)2.5 E F0(to)2.5 E F2(caspar)2.5
E F0(.)A F1(install DESCRIPTION)20 278.4 Q F2(csp_install)100 290.4 Q F0
.163(creates the required directory \(if needed\) and installs the \214\
le, preserving timestamps.)2.662 F(It uses install\(1\).)100 302.4 Q F1
(install EXAMPLES)20 319.2 Q/F4 10/Courier@0 SF
(csp_INSTALL_OPTIONS='--owner=www-data --group=www-data' \\)106 331.2 Q
(csp_INSTALL_MODE=ugo=r \\)112 343.2 Q(csp_install /srv/www index.html)
112 355.2 Q
(csp_INSTALL_MODE=u=rwx,go= csp_install /usr/local/sbin mkpasswd)106
391.2 Q F1(install ENVIR)20 420 Q(ONMENT)-.329 E F2(csp_install)100 432
Q F0 8.147(honors csp_INST)10.647 F 8.147(ALL_OPTIONS and csp_INST)-.93
F 8.146(ALL_MODE \(def)-.93 F 8.146(ault is)-.1 F(u=rw)100 444 Q
(,go=r\).)-.65 E F1(mkdir)20 460.8 Q(cp DESCRIPTION)-.197 E F2
(csp_mkdir)100 472.8 Q(cp)-.18 E F0 .42(calls mkdir\(1\) and cp\(1\).)
2.92 F F2(csp_mkdir)5.42 E(cp)-.18 E F0 .42(is used lik)2.92 F 2.92(ec)
-.1 G .42(sp_CP. use)-2.92 F F2(csp_mkdir)2.92 E(cp)-.18 E F0(if)2.92 E
1.673(you frequently ha)100 484.8 R 1.973 -.15(ve t)-.2 H 4.173(ob).15 G
1.672
(ootstrap installation on a fresh system, on which needed directories)
-4.173 F(don')100 496.8 Q 2.746(te)-.18 G .246(xist yet.)-2.896 F F2
(csp_mkdir)2.746 E(cp)-.18 E F0(mak)2.746 E .246(es sure the tar)-.1 F
.246(get directory e)-.18 F .247(xists before calling cp\(1\), by call-)
-.15 F(ing mkdir -p \214rst.)100 508.8 Q F1(scp_k)20 525.6 Q
(eep_mode DESCRIPTION)-.11 E F2(csp_scp_k)100 537.6 Q(eep_mode)-.1 E F0
.573(uses ssh to cop)3.073 F 3.073(ya\214)-.1 G .573
(le to a remote host, k)-3.073 F .572
(eeping its \214le permission mode.)-.1 F .635
(The trick used is a combination of mktemp\(1\) and mv\(1\).)100 549.6 R
.635(Useful if you')5.635 F 3.135(dl)-.5 G(ik)-3.135 E 3.135(et)-.1 G
3.135(ob)-3.135 G 3.135(es)-3.135 G .635(ure a \214le)-3.135 F(gets ins\
talled e.g. group writable, without \214ddling with permission bits on \
the remote host.)100 561.6 Q F1(scp_k)20 578.4 Q(eep_mode EXAMPLE)-.11 E
F4(chmod g+w rc)112 590.4 Q(csp_scp_keep_mode root@gandalf /etc/uruk rc)
112 602.4 Q F1(scp_k)20 631.2 Q(eep_mode ENVIR)-.11 E(ONMENT)-.329 E F2
(csp_scp_k)100 643.2 Q(eep_mode)-.1 E F0(honors csp_SSH \("ssh" by def)
2.5 E(ault\).)-.1 E F1(sucp DESCRIPTION)20 660 Q F2(csp_sucp)100 672 Q
F0 .965
(calls tar\(1\) from within sudo\(1\) from within ssh\(1\). This allo)
3.466 F .965(ws one to cop)-.25 F 3.465<798c>-.1 G .965(les to)-3.465 F
(accounts on hosts one can only reach by calling sudo on the ssh-reacha\
ble remote host.)100 684 Q -.8(Ty)100 708 S(pically).8 E 3.552(,o)-.65 G
1.052(ne w)-3.552 F 1.052(ants to install a root-o)-.1 F 1.052
(wned \214le, b)-.25 F 1.052(ut one does not w)-.2 F 1.053(ant to allo)
-.1 F 3.553(wa)-.25 G 1.053(ccess to the)-3.553 F
(root-account directly from ssh. T)100 720 Q
(ypically sudo is used as an e)-.8 E(xtra line of defense.)-.15 E
(csp_helper 20170830)20 768 Q<333020d0b0d0b2d0b32032303137>114.85 E(1)
195.67 E 0 Cg EP
%%Page: 2 2
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF 131.795(csp_helper\(1\) USER)20 48 R 134.295
(COMMANDS csp_helper\(1\))2.5 F(NB: if your sudo prompts for a passw)100
84 Q(ord, be sure to ha)-.1 E .3 -.15(ve l)-.2 H(ine).15 E/F1 10
/Courier@0 SF(Defaults !tty_tickets)112 120 Q F0 .137
(in your sudoers \214le: we \214rst call sudo -v)100 144 R 2.636(,t)-.65
G .136(han we call sudo to write the data. Since we use ssh to)-2.636 F
(get to the host, we')100 156 Q(ll use a dif)-.1 E
(ferent tty for both sudo calls.)-.25 E/F2 10.95/Times-Bold@0 SF
(sucp EXAMPLES)20 172.8 Q F0(Some e)100 184.8 Q(xamples:)-.15 E F1
(csp_sucp rms@bilbo /etc fstab)112 220.8 Q
(csp_sucp monty-python commit/ trailer.txt)112 256.8 Q F2 -.548(AU)20
285.6 S(THOR).548 E F0(Joost v)100 297.6 Q(an Baal-Ili\304)-.25 E F2
(SEE ALSO)20 314.4 Q/F3 10/Times-Bold@0 SF(caspar\(7\))100 326.4 Q F0
(The caspar homepage is at http://mdcc.cx/caspar/ .)2.5 E
(csp_helper 20170830)20 768 Q<333020d0b0d0b2d0b32032303137>114.85 E(2)
195.67 E 0 Cg EP
%%Trailer
end
%%EOF
caspar-20170830/doc/csp_helper.txt 0000644 0001751 0001751 00000005650 13151515315 013614 0000000 0000000 30 авг 2017 csp_helper 20170830
1.
NAME
2.
SYNOPSIS
3.
DESCRIPTION
4.
install DESCRIPTION
5.
install EXAMPLES
6.
install ENVIRONMENT
7.
mkdircp DESCRIPTION
8.
scp_keep_mode DESCRIPTION
9.
scp_keep_mode EXAMPLE
10.
scp_keep_mode ENVIRONMENT
11.
sucp DESCRIPTION
12.
sucp EXAMPLES
13.
AUTHOR
14.
SEE ALSO
NAME
csp_helper — A collection of caspar helper scripts
SYNOPSIS
csp_install dir (directory) file (file)
csp_mkdircp dir (directory) file (file)
csp_scp_keep_mode h ([user@]host) dir (directory) file (file)
csp_sucp h ([user@]host) dir (directory) file (file)
DESCRIPTION
The scripts csp_install, csp_mkdircp, csp_scp_keep_mode and csp_sucp are
helpers for caspar(7). These scripts typically are not invoked directly, but
via a Makefile which uses caspar. See the notes on csp_PUSH in caspar(7) for
information on how to link csp_install, csp_scp_keep_mode and csp_sucp to
caspar.
install DESCRIPTION
csp_install creates the required directory (if needed) and installs the file,
preserving timestamps. It uses install(1).
install EXAMPLES
csp_INSTALL_OPTIONS='--owner=www-data --group=www-data' \ csp_INSTALL_MODE=ugo=
r \ csp_install /srv/www index.html
csp_INSTALL_MODE=u=rwx,go= csp_install /usr/local/sbin mkpasswd
install ENVIRONMENT
csp_install honors csp_INSTALL_OPTIONS and csp_INSTALL_MODE (default is u=rw,go
=r).
mkdircp DESCRIPTION
csp_mkdircp calls mkdir(1) and cp(1). csp_mkdircp is used like csp_CP. use
csp_mkdircp if you frequently have to bootstrap installation on a fresh system,
on which needed directories don't exist yet. csp_mkdircp makes sure the target
directory exists before calling cp(1), by calling mkdir -p first.
scp_keep_mode DESCRIPTION
csp_scp_keep_mode uses ssh to copy a file to a remote host, keeping its file
permission mode. The trick used is a combination of mktemp(1) and mv(1). Useful
if you'd like to be sure a file gets installed e.g. group writable, without
fiddling with permission bits on the remote host.
scp_keep_mode EXAMPLE
chmod g+w rc csp_scp_keep_mode root@gandalf /etc/uruk rc
scp_keep_mode ENVIRONMENT
csp_scp_keep_mode honors csp_SSH ("ssh" by default).
sucp DESCRIPTION
csp_sucp calls tar(1) from within sudo(1) from within ssh(1). This allows one
to copy files to accounts on hosts one can only reach by calling sudo on the
ssh-reachable remote host.
Typically, one wants to install a root-owned file, but one does not want to
allow access to the root-account directly from ssh. Typically sudo is used as
an extra line of defense.
NB: if your sudo prompts for a password, be sure to have line
Defaults !tty_tickets
in your sudoers file: we first call sudo -v, than we call sudo to write the
data. Since we use ssh to get to the host, we'll use a different tty for both
sudo calls.
sucp EXAMPLES
Some examples:
csp_sucp rms@bilbo /etc fstab
csp_sucp monty-python commit/ trailer.txt
AUTHOR
Joost van Baal-Ilić
SEE ALSO
caspar(7) The caspar homepage is at http://mdcc.cx/caspar/ .
caspar-20170830/doc/caspar.html 0000644 0001751 0001751 00000043130 13151515315 013061 0000000 0000000
caspar
30 авг 2017
caspar
20170830
NAME
caspar - Makefile snippets for common tasks
SYNOPSIS
In a Makefile, write either
include caspar/mk/caspar.mk
or
include caspar/mk/docbook.mk
or
include caspar/mk/pod.mk
.
DESCRIPTION
Caspar offers Makefile snippets for common tasks, like installing
(configuration) files, or typesetting LaTeX, DocBook XML and DocBook SGML
documents.
The typesetting functionality is delivered by docbook.mk and pod.mk.
This is documented in caspar-typesetting(7).
The installing-stuff functionality is delivered by caspar.mk.
(That's what the rest of the manual will talk about.) It enables one to run
'make install' from within a tree which typically holds configuration files,
managed using Subversion (or git or any other version control system, for that
matter).
It is useful in cases like this: all configuration files of some host are under
version control, and, after commiting a change to CVS, you want to be able to
easily install the new configuration file on the host.
With caspar, all you have to do is specify the hostname in one place, and
specify the name of the target directory in each CVS directory.
It is comparable with other tools for Unix system administrators like
puppet and cfengine. Main difference: the caspar code consists of less than
100 lines of GNU Make.
USAGE
Within a CVS tree, create a file include/install.mk, with contents like
e.g.
csp_UHOST = root@some.host.somewhere
include caspar/mk/caspar.mk
. Within each other directory of the CVS tree which holds files, create a
Makefile, which looks like e.g.
csp_DIR = /some/dir/ectory/
include ../../include/install.mk
.
If you'd like to use the install-recursive target too, in directories
which hold subdirectories (but not files), you'll have to create a Makefile
which looks something like
include ../../include/install.mk
. From within the CVS tree, one can call:
make <filename>-diff
make <filename>-install
make diff
make install
make load
make
make install-recursive
Calling make <filename>-diff shows the diff between the local file
and the file as currently installed on the remote location.
Calling make install (or make) now will scp all files in the current
directory to the remote location. The install-recursive target descends
down the tree, and calls make install in each subdirectory.
Of course, you'll have to be able to ssh directly as root to the remote host to
get this working (if you'd like to use csp_UHOST =
root@some.host.somewhere). If you don't like this, and would like to have a
PermitRootLogin no in your /etc/ssh/sshd_config, you can use
csp_sucp(1). See below.
VARIABLES
The variables one can set in a calling Makefile are:
user@host, reachable using $(csp_PUSH) (which
is scp by default)
space separated list of user@host items, reachable
using $(csp_PUSH)
directory on host, reachable using function
$(csp_PUSH)
make function for pushing files to remote location.
Usually, this is a wrapper around a script or
program. The function will be passed 4 arguments:
[user@]host, remote directory and local
filename.
[user@]host will be set
to all elements of $(csp_UHOSTS);
directory will be set to $(csp_DIR).
Currently, $(csp_scp_FUNC), $(csp_cp_FUNC)
and $(csp_sucp_FUNC) are supported as push
plugins. If csp_PUSH is unset, the default
$(csp_scp_FUNC) is used.
the `load' target depends upon these targets.
the `build' target depends upon these targets.
cp binary, just "cp" by default
scp binary, just "scp" by default
script wrapping sudo in ssh, "csp_sucp" by default
extra files which should be installed.
Can be used to include files starting with a dot.
files which should never be installed. Set to
Makefile .%.swp %~ #%# pod2htmd.tmp pod2htmi.tmp by default.
extra files which should never be installed;
added to list in csp_TABOOFILES.
files which should be installed, even if
in initial csp_TABOOFILES list. Removed from csp_TABOOFILES
list.
directories to exclude in install-recursive target.
set to CVS .svn by default.
csp_TABOODIRS_ADD, csp_TABOODIRS_SKIP
see
csp_TABOOFILES equivalents.
override csp_UHOSTS: don't push to csp_UHOSTS, but
to the intersection of this space separated list of user@host items and
csp_UHOSTS.
The following variables might get phased out or removed soonish:
extra arguments to pass to cp invocation, none by
default
extra arguments to pass to scp invocation, e.g.
'-i .ssh/id_rsa-root'
EXAMPLES
Some examples:
Using csp_UHOST
This is the simplest way to use caspar. Makefile is
csp_UHOST = root@some.host.somewhere
csp_DIR = /etc/
include caspar/mk/caspar.mk
Now, running "make" will scp all files in the current directory to
root@some.host.somewhere:/etc/.
More hosts, not scp but sudo via ssh: using csp_PUSH
Makefile is
csp_UHOSTS = root@some.host.somewhere root@some.other.host
csp_PUSH = $(csp_sucp_FUNC)
csp_DIR = /etc/
include caspar/mk/caspar.mk
Now, running "make" will use csp_sucp(1) to install all files in the current
directory to both root@some.host.somewhere:/etc/ and
root@some.other.host:/etc/. If a file named fstab is present in the
current directory, running "make fstab-install" will just install that one
file.
If you need to sudo(1) to another user on the remote host, add something like
csp_XARG = postgres
. (If such a username is not supplied, sudo (and csp_sucp) use the default:
root.)
Overriding csp_UHOSTS: csp_UHOSTS_SKIP
If one or some of your hosts are temporarily unavailable, and you'd like to
push your files to the hosts which are alive, you can temporarily override your
csp_UHOSTS. E.g., when some.other.host is not available:
% cat Makefile
csp_UHOSTS = root@some.host.somewhere root@some.other.host
csp_DIR = /etc/
include caspar/mk/caspar.mk
% make install csp_UHOSTS_SKIP=root@some.other.host
scp hosts root@some.host.somewhere:/etc/
scp fstab root@some.host.somewhere:/etc/
Overriding csp_UHOSTS in a smart way: csp_UHOSTS_SUBSET. Using multiple
groups of hosts. Recursive make made easy.
If you have lots of subdirectories holding information for lots of groups of
hosts, while this run you just want to install for a small group (or 1) hosts,
csp_UHOSTS_SUBSET is useful.
Suppose your casparized tree looks like
Makefile
apache/include/install.mk
apache/etc/apache2/Makefile
apache/etc/apache2/envvars
php/include/install.mk
php/etc/php4/apache/Makefile
php/etc/php4/apache/php.ini
grub/include/install.mk
grub/boot/grub/Makefile
grub/boot/grub/menu.lst
logrotate/include/install.mk
logrotate/etc/Makefile
logrotate/etc/logrotate.conf
nrpe/include/install.mk
nrpe/debian/etc/default/Makefile
nrpe/debian/etc/default/nagios-nrpe-server
The file apache/etc/apache2/Makefile is:
csp_DIR = /etc/apache2/
include ../../include/install.mk
(all other Makefiles are similar).
The file apache/include/install.mk is
csp_UHOSTS = root@a root@b
include caspar/mk/caspar.mk
The file php/include/install.mk is the same. The files
grub/include/install.mk and logrotate/include/install.mk are
csp_UHOSTS = root@d root@e root@f root@g
include caspar/mk/caspar.mk
The file nrpe/include/install.mk is
csp_UHOSTS = root@d root@e root@f root@n
include caspar/mk/caspar.mk
The toplevel Makefile is
dirs = $(patsubst %/Makefile,%,$(shell find * -mindepth 1
-name Makefile))
all:
for i in $(dirs); do $(MAKE) -$(MAKEFLAGS) -C $$i; done
install
for i in $(dirs); do $(MAKE) -$(MAKEFLAGS) -C $$i install; done
load
for i in $(dirs); do $(MAKE) -$(MAKEFLAGS) -C $$i load; done
(we don't feel like sticking a Makefile in all non-leaf nodes of our tree).
Now, when running "csp_UHOSTS_SUBSET='root@e root@f root@m root@n' make"
in the toplevel, caspar just takes the intersection of csp_UHOSTS_SUBSET and
csp_UHOSTS for each csp_UHOSTS list. So, caspar will not push anything for
apache/ and php/. The files grub/boot/grub/menu.lst and
logrotate/etc/logrotate.conf will get pushed to root@e and
root@f only. The file nrpe/debian/etc/default/nagios-nrpe-server
will get pushed to root@e, root@f and root@n.
This is often better than just overriding csp_UHOSTS on the commandline (or in
your shell's environment): if the intersection of the original csp_UHOSTS and
your new csp_UHOSTS is empty, chances are big you've just forgotten to clean
your environment.
Creating remote directories if needed
Makefile is
csp_DIR = /some/dir/ectory/
csp_PUSH = $(csp_scpmkdir_FUNC)
csp_UHOST = root@some.host.somewhere
include caspar/mk/caspar.mk
Now, before calling scp, caspar will run 'mkdir -p' to create any missing
remote directories.
Using csp_CP and csp_LOAD
username/etc/Makefile is
csp_UHOST = dummy
csp_PUSH = $(csp_cp_FUNC)
csp_DIR = $(HOME)/etc/
csp_LOAD = crontab-load
include ../include/install.mk
crontab-load = crontab $(csp_DIR)/crontab
while ../include/install.mk is just
include caspar/mk/caspar.mk
.
Setting csp_PUSH to $(csp_cp_FUNC) causes cp(1) to get executed
by "make install" (not scp(1)).
Setting csp_LOAD causes "make load" to execute the crontab command. Just
running "make" is OK too, since "make" calls both "make install" and "make
load".
Using csp_DIR, csp_LOAD and install(1)
To install a file on the local host, create e.g. a file etc/uruk/Makefile
like:
csp_UHOST = dummy
csp_DIR = /etc/uruk/
csp_PUSH = $(csp_install_FUNC)
csp_LOAD = uruk-load
include caspar/mk/caspar.mk
uruk-load = sudo invoke-rc.d uruk force-reload
Using csp_DIR and csp_LOAD, take 2
etc/Makefile is
csp_DIR = /etc/
csp_LOAD = aliases-load
include ../include/install.mk
aliases-load = $(csp_SSH) $1 "cd /etc && postalias aliases; postfix reload"
while ../include/install.mk is
csp_UHOST = root@some.host.somewhere
include caspar/mk/caspar.mk
Building files locally
Note: csp_BUILD is deprecated. You should not use it.
If you'd like to build some files locally from local sources, before installing
the just built files, do e.g.:
csp_UHOST = root@some.host.somewhere
csp_DIR = /etc/
csp_EXTRAFILES = sshd_config
csp_TABOOFILES_ADD = sshd_config.m4
include caspar/mk/caspar.mk
sshd_config: sshd_config.m4
m4 $< > $@
List all source files in csp_TABOOFILES_ADD: this way, they won't get installed
on the csp_UHOST.
Using csp_sucp_FUNC and csp_LOAD
If you'd like to use csp_sucp and want a `load' target, do something like:
csp_PUSH = $(csp_sucp_FUNC)
csp_UHOST = foobar.example.com
csp_DIR = /etc/uruk/
csp_LOAD = rc-load
include caspar/mk/caspar.mk
rc-load = $(csp_SSH) $1 sudo invoke-rc.d uruk force-reload
caspar-20170830/doc/caspar.ps 0000644 0001751 0001751 00000064153 13151515327 012552 0000000 0000000 %!PS-Adobe-3.0
%%Creator: groff version 1.22.2
%%CreationDate: Wed Aug 30 13:00:39 2017
%%DocumentNeededResources: font Times-Roman
%%+ font Times-Bold
%%+ font Courier
%%+ font Times-Italic
%%DocumentSuppliedResources: procset grops 1.22 2
%%Pages: 7
%%PageOrder: Ascend
%%DocumentMedia: Default 595 842 0 () ()
%%Orientation: Portrait
%%EndComments
%%BeginDefaults
%%PageMedia: Default
%%EndDefaults
%%BeginProlog
%%BeginResource: procset grops 1.22 2
%!PS-Adobe-3.0 Resource-ProcSet
/setpacking where{
pop
currentpacking
true setpacking
}if
/grops 120 dict dup begin
/SC 32 def
/A/show load def
/B{0 SC 3 -1 roll widthshow}bind def
/C{0 exch ashow}bind def
/D{0 exch 0 SC 5 2 roll awidthshow}bind def
/E{0 rmoveto show}bind def
/F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def
/G{0 rmoveto 0 exch ashow}bind def
/H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/I{0 exch rmoveto show}bind def
/J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def
/K{0 exch rmoveto 0 exch ashow}bind def
/L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/M{rmoveto show}bind def
/N{rmoveto 0 SC 3 -1 roll widthshow}bind def
/O{rmoveto 0 exch ashow}bind def
/P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/Q{moveto show}bind def
/R{moveto 0 SC 3 -1 roll widthshow}bind def
/S{moveto 0 exch ashow}bind def
/T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/SF{
findfont exch
[exch dup 0 exch 0 exch neg 0 0]makefont
dup setfont
[exch/setfont cvx]cvx bind def
}bind def
/MF{
findfont
[5 2 roll
0 3 1 roll
neg 0 0]makefont
dup setfont
[exch/setfont cvx]cvx bind def
}bind def
/level0 0 def
/RES 0 def
/PL 0 def
/LS 0 def
/MANUAL{
statusdict begin/manualfeed true store end
}bind def
/PLG{
gsave newpath clippath pathbbox grestore
exch pop add exch pop
}bind def
/BP{
/level0 save def
1 setlinecap
1 setlinejoin
DEFS/BPhook known{DEFS begin BPhook end}if
72 RES div dup scale
LS{
90 rotate
}{
0 PL translate
}ifelse
1 -1 scale
}bind def
/EP{
level0 restore
showpage
}def
/DA{
newpath arcn stroke
}bind def
/SN{
transform
.25 sub exch .25 sub exch
round .25 add exch round .25 add exch
itransform
}bind def
/DL{
SN
moveto
SN
lineto stroke
}bind def
/DC{
newpath 0 360 arc closepath
}bind def
/TM matrix def
/DE{
TM currentmatrix pop
translate scale newpath 0 0 .5 0 360 arc closepath
TM setmatrix
}bind def
/RC/rcurveto load def
/RL/rlineto load def
/ST/stroke load def
/MT/moveto load def
/CL/closepath load def
/Fr{
setrgbcolor fill
}bind def
/setcmykcolor where{
pop
/Fk{
setcmykcolor fill
}bind def
}if
/Fg{
setgray fill
}bind def
/FL/fill load def
/LW/setlinewidth load def
/Cr/setrgbcolor load def
/setcmykcolor where{
pop
/Ck/setcmykcolor load def
}if
/Cg/setgray load def
/RE{
findfont
dup maxlength 1 index/FontName known not{1 add}if dict begin
{
1 index/FID ne
2 index/UniqueID ne
and
{def}{pop pop}ifelse
}forall
/Encoding exch def
dup/FontName exch def
currentdict end definefont pop
}bind def
/DEFS 0 def
/EBEGIN{
moveto
DEFS begin
}bind def
/EEND/end load def
/CNT 0 def
/level1 0 def
/PBEGIN{
/level1 save def
translate
div 3 1 roll div exch scale
neg exch neg exch translate
0 setgray
0 setlinecap
1 setlinewidth
0 setlinejoin
10 setmiterlimit
[]0 setdash
/setstrokeadjust where{
pop
false setstrokeadjust
}if
/setoverprint where{
pop
false setoverprint
}if
newpath
/CNT countdictstack def
userdict begin
/showpage{}def
/setpagedevice{}def
mark
}bind def
/PEND{
cleartomark
countdictstack CNT sub{end}repeat
level1 restore
}bind def
end def
/setpacking where{
pop
setpacking
}if
%%EndResource
%%EndProlog
%%BeginSetup
%%BeginFeature: *PageSize Default
<< /PageSize [ 595 842 ] /ImagingBBox null >> setpagedevice
%%EndFeature
%%IncludeResource: font Times-Roman
%%IncludeResource: font Times-Bold
%%IncludeResource: font Courier
%%IncludeResource: font Times-Italic
grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72
def/PL 841.89 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron
/Zcaron/scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent
/ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen
/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon
/semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O
/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex
/underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y
/z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft
/guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl
/endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut
/dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash
/quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen
/brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft
/logicalnot/minus/registered/macron/degree/plusminus/twosuperior
/threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior
/ordmasculine/guilsinglright/onequarter/onehalf/threequarters
/questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE
/Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex
/Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis
/multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn
/germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla
/egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis
/eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash
/ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def
/Times-Italic@0 ENC0/Times-Italic RE/Courier@0 ENC0/Courier RE
/Times-Bold@0 ENC0/Times-Bold RE/Times-Roman@0 ENC0/Times-Roman RE
%%EndSetup
%%Page: 1 1
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF 151.385(caspar\(7\) MISCELLANEOUS)20 48 R
(caspar\(7\))156.385 E/F1 10.95/Times-Bold@0 SF -.219(NA)20 84 S(ME).219
E F0(caspar - Mak)100 96 Q(e\214le snippets for common tasks)-.1 E F1
(SYNOPSIS)20 112.8 Q F0(In a Mak)100 124.8 Q(e\214le, write either)-.1 E
/F2 10/Courier@0 SF(include caspar/mk/caspar.mk)112 160.8 Q F0(or)100
184.8 Q F2(include caspar/mk/docbook.mk)112 220.8 Q F0(or)100 244.8 Q F2
(include caspar/mk/pod.mk)112 280.8 Q F0(.)100 304.8 Q F1(DESCRIPTION)20
321.6 Q F0 .8(Caspar of)100 333.6 R .8(fers Mak)-.25 F .8
(e\214le snippets for common tasks, lik)-.1 F 3.3(ei)-.1 G .8
(nstalling \(con\214guration\) \214les, or type-)-3.3 F(setting LaT)100
345.6 Q(eX, DocBook XML and DocBook SGML documents.)-.7 E 1.351
(The typesetting functionality is deli)100 369.6 R -.15(ve)-.25 G 1.352
(red by).15 F/F3 10/Times-Italic@0 SF(docbook.mk)3.852 E F0(and)3.852 E
F3(pod.mk)3.852 E F0 6.352(.T)C 1.352(his is documented in)-6.352 F/F4
10/Times-Bold@0 SF(caspar)100 381.6 Q(-typesetting\(7\))-.37 E F0(.)A
.456(The installing-stuf)100 405.6 R 2.956(ff)-.25 G .456
(unctionality is deli)-2.956 F -.15(ve)-.25 G .456(red by).15 F F3
(caspar.mk)2.955 E F0 5.455(.\()C(That')-5.455 E 2.955(sw)-.55 G .455
(hat the rest of the manual)-2.955 F 1.22
(will talk about.\) It enables one to run 'mak)100 417.6 R 3.721(ei)-.1
G 1.221(nstall' from within a tree which typically holds)-3.721 F 1.199
(con\214guration \214les, managed using Sub)100 429.6 R -.15(ve)-.15 G
1.199(rsion \(or git or an).15 F 3.698(yo)-.15 G 1.198(ther v)-3.698 F
1.198(ersion control system, for)-.15 F(that matter\).)100 441.6 Q .536
(It is useful in cases lik)100 465.6 R 3.036(et)-.1 G .537
(his: all con\214guration \214les of some host are under v)-3.036 F .537
(ersion control, and,)-.15 F .167
(after commiting a change to CVS, you w)100 477.6 R .166
(ant to be able to easily install the ne)-.1 F 2.666(wc)-.25 G .166
(on\214guration \214le)-2.666 F(on the host.)100 489.6 Q -.4(Wi)100
513.6 S(th).4 E F4(caspar)3.267 E F0 3.267(,a)C .767(ll you ha)-3.267 F
1.067 -.15(ve t)-.2 H 3.267(od).15 G 3.267(oi)-3.267 G 3.267(ss)-3.267 G
.767(pecify the hostname in one place, and specify the name of)-3.267 F
(the tar)100 525.6 Q(get directory in each CVS directory.)-.18 E .324
(It is comparable with other tools for Unix system administrators lik)
100 549.6 R 2.823(ep)-.1 G .323(uppet and cfengine. Main)-2.823 F(dif)
100 561.6 Q
(ference: the caspar code consists of less than 100 lines of GNU Mak)
-.25 E(e.)-.1 E F1(USA)20 578.4 Q(GE)-.602 E F0 -.4(Wi)100 590.4 S
(thin a CVS tree, create a \214le).4 E F3(include/install.mk)2.5 E F0
2.5(,w)C(ith contents lik)-2.5 E 2.5(ee)-.1 G(.g.)-2.5 E F2
(csp_UHOST = root@some.host.somewhere)106 626.4 Q
(include caspar/mk/caspar.mk)106 638.4 Q F0 3.156(.W)100 662.4 S .657(i\
thin each other directory of the CVS tree which holds \214les, create a\
Mak)-3.556 F .657(e\214le, which looks)-.1 F(lik)100 674.4 Q 2.5(ee)-.1
G(.g.)-2.5 E(caspar 20170830)20 768 Q<333020d0b0d0b2d0b32032303137>
132.63 E(1)195.67 E 0 Cg EP
%%Page: 2 2
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF 151.385(caspar\(7\) MISCELLANEOUS)20 48 R
(caspar\(7\))156.385 E/F1 10/Courier@0 SF(csp_DIR = /some/dir/ectory/)
106 84 Q(include ../../include/install.mk)106 96 Q F0 5.041(.I)100 120 S
2.541(fy)-5.041 G(ou')-2.541 E 2.541(dl)-.5 G(ik)-2.541 E 2.541(et)-.1 G
2.541(ou)-2.541 G .041(se the)-2.541 F/F2 10/Times-Italic@0 SF
(install-r)2.541 E(ecur)-.37 E(sive)-.1 E F0(tar)2.541 E .04
(get too, in directories which hold subdirectories \(b)-.18 F(ut)-.2 E
(not \214les\), you')100 132 Q(ll ha)-.1 E .3 -.15(ve t)-.2 H 2.5(oc).15
G(reate a Mak)-2.5 E(e\214le which looks something lik)-.1 E(e)-.1 E F1
(include ../../include/install.mk)106 168 Q F0 2.5(.F)100 192 S
(rom within the CVS tree, one can call:)-2.5 E F1(make -diff)
112 228 Q(make -install)112 240 Q(make diff)112 252 Q
(make install)112 264 Q(make load)112 276 Q(make)112 288 Q
(make install-recursive)112 300 Q F0(Calling)100 324 Q F1 .961
(make -diff)3.461 F F0(sho)3.461 E .961(ws the dif)-.25 F
3.461(fb)-.25 G .962(etween the local \214le and the \214le as cur)
-3.461 F(-)-.2 E 1.055(rently installed on the remote location.)100 336
R(Calling)6.055 E F1 1.055(make install)3.555 F F0(\(or)3.555 E F1(make)
3.555 E F0 3.555(\)n)C 1.555 -.25(ow w)-3.555 H 1.055(ill scp all).25 F
.818(\214les in the current directory to the remote location. The)100
348 R F2(install-r)3.318 E(ecur)-.37 E(sive)-.1 E F0(tar)3.318 E .818
(get descends do)-.18 F(wn)-.25 E(the tree, and calls)100 360 Q F1
(make install)2.5 E F0(in each subdirectory.)2.5 E .277(Of course, you')
100 384 R .277(ll ha)-.1 F .577 -.15(ve t)-.2 H 2.777(ob).15 G 2.777(ea)
-2.777 G .277
(ble to ssh directly as root to the remote host to get this w)-2.777 F
.277(orking \(if)-.1 F(you')100 396 Q 3.444(dl)-.5 G(ik)-3.444 E 3.444
(et)-.1 G 3.444(ou)-3.444 G(se)-3.444 E F1 .944
(csp_UHOST = root@some.host.somewhere)3.444 F F0 .945(\). If you don')B
3.445(tl)-.18 G(ik)-3.445 E 3.445(et)-.1 G(his,)-3.445 E .582(and w)100
408 R .582(ould lik)-.1 F 3.082(et)-.1 G 3.082(oh)-3.082 G -2.25 -.2
(av e)-3.082 H(a)3.282 E F1 .582(PermitRootLogin no)3.082 F F0 .582
(in your)3.082 F F1(/etc/ssh/sshd_config)3.081 E F0 3.081(,y)C(ou)-3.081
E(can use csp_sucp\(1\). See belo)100 420 Q(w.)-.25 E/F3 10.95
/Times-Bold@0 SF -1.478(VA)20 436.8 S(RIABLES)1.478 E F0(The v)100 448.8
Q(ariables one can set in a calling Mak)-.25 E(e\214le are:)-.1 E F1
(csp_UHOST)100 472.8 Q F0(user@host, reachable using)120 484.8 Q F1
($\(csp_PUSH\))2.5 E F0(\(which is scp by def)2.5 E(ault\))-.1 E F1
(csp_UHOSTS)100 496.8 Q F0
(space separated list of user@host items, reachable using)120 508.8 Q F1
($\(csp_PUSH\))2.5 E(csp_DIR)100 520.8 Q F0
(directory on host, reachable using function)120 532.8 Q F1
($\(csp_PUSH\))2.5 E(csp_PUSH)100 544.8 Q F0(mak)120 556.8 Q 4.06(ef)-.1
G 1.56(unction for pushing \214les to remote location.)-4.06 F(Usually)
6.561 E 4.061(,t)-.65 G 1.561(his is a wrapper around a)-4.061 F 1.827
(script or program. The function will be passed 4 ar)120 568.8 R
(guments:)-.18 E F2([user@]host)120 580.8 Q F0 3.125(,r)C(emote)-3.125 E
F2(dir)3.125 E(ectory)-.37 E F0 .625(and local)3.125 F F2(\214lename)
3.125 E F0(.)A F2([user@]host)5.625 E F0 .625
(will be set to all elements)3.125 F(of)120 592.8 Q F1($\(csp_UHOSTS\))
11.692 E F0(;)A F2(dir)11.692 E(ectory)-.37 E F0 9.191(will be set to)
11.691 F F1($\(csp_DIR\))11.691 E F0 14.191(.C)C(urrently)-14.191 E(,)
-.65 E F1($\(csp_scp_FUNC\))120 604.8 Q F0(,)A F1($\(csp_cp_FUNC\))3.513
E F0(and)3.513 E F1($\(csp_sucp_FUNC\))3.513 E F0 1.014
(are supported as)3.513 F(push plugins. If)120 616.8 Q F1(csp_PUSH)2.5 E
F0(is unset, the def)2.5 E(ault)-.1 E F1($\(csp_scp_FUNC\))2.5 E F0
(is used.)2.5 E F1(csp_LOAD)100 628.8 Q F0(the `load' tar)120 640.8 Q
(get depends upon these tar)-.18 E(gets.)-.18 E F1(csp_BUILD)100 652.8 Q
F0(the `b)120 664.8 Q(uild' tar)-.2 E(get depends upon these tar)-.18 E
(gets.)-.18 E F1(csp_CP)100 676.8 Q F0(cp binary)120 688.8 Q 2.5(,j)-.65
G(ust "cp" by def)-2.5 E(ault)-.1 E F1(csp_SCP)100 700.8 Q F0
(scp binary)120 712.8 Q 2.5(,j)-.65 G(ust "scp" by def)-2.5 E(ault)-.1 E
F1(csp_SUCP)100 724.8 Q F0(caspar 20170830)20 768 Q
<333020d0b0d0b2d0b32032303137>132.63 E(2)195.67 E 0 Cg EP
%%Page: 3 3
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF 151.385(caspar\(7\) MISCELLANEOUS)20 48 R
(caspar\(7\))156.385 E(script wrapping sudo in ssh, "csp_sucp" by def)
120 84 Q(ault)-.1 E/F1 10/Courier@0 SF(csp_EXTRAFILES)100 96 Q F0 -.15
(ex)120 108 S(tra \214les which should be installed.).15 E
(Can be used to include \214les starting with a dot.)5 E F1
(csp_TABOOFILES)100 120 Q F0 5.457(\214les which should ne)120 132 R
-.15(ve)-.25 G 7.957(rb).15 G 7.956(ei)-7.957 G 5.456(nstalled. Set to)
-7.956 F F1 5.456(Makefile .%.swp %~ #%#)7.956 F
(pod2htmd.tmp pod2htmi.tmp)120 144 Q F0(by def)2.5 E(ault.)-.1 E F1
(csp_TABOOFILES_ADD)100 156 Q F0 -.15(ex)120 168 S
(tra \214les which should ne).15 E -.15(ve)-.25 G 2.5(rb).15 G 2.5(ei)
-2.5 G(nstalled; added to list in)-2.5 E F1(csp_TABOOFILES)2.5 E F0(.)A
F1(csp_TABOOFILES_SKIP)100 180 Q F0 1.04
(\214les which should be installed, e)120 192 R -.15(ve)-.25 G 3.54(ni)
.15 G 3.54(fi)-3.54 G 3.54(ni)-3.54 G(nitial)-3.54 E F1(csp_TABOOFILES)
3.54 E F0 1.04(list. Remo)3.54 F -.15(ve)-.15 G 3.54(df).15 G(rom)-3.54
E F1(csp_TABOOFILES)120 204 Q F0(list.)2.5 E F1(csp_TABOODIRS)100 216 Q
F0(directories to e)120 228 Q(xclude in install-recursi)-.15 E .3 -.15
(ve t)-.25 H(ar).15 E 2.5(get. set)-.18 F(to)2.5 E F1(CVS .svn)2.5 E F0
(by def)2.5 E(ault.)-.1 E F1(csp_TABOODIRS_ADD)100 240 Q F0(,)A F1
(csp_TABOODIRS_SKIP)2.5 E F0(see)120 252 Q F1(csp_TABOOFILES)2.5 E F0
(equi)2.5 E -.25(va)-.25 G(lents.).25 E F1(csp_UHOSTS_SUBSET)100 264 Q
F0 -.15(ove)120 276 S 1.12(rride csp_UHOSTS: don').15 F 3.619(tp)-.18 G
1.119(ush to csp_UHOSTS, b)-3.619 F 1.119
(ut to the intersection of this space)-.2 F
(separated list of user@host items and csp_UHOSTS.)120 288 Q(The follo)
100 312 Q(wing v)-.25 E(ariables might get phased out or remo)-.25 E
-.15(ve)-.15 G 2.5(ds).15 G(oonish:)-2.5 E F1(csp_CPFLAGS)100 336 Q F0
-.15(ex)120 348 S(tra ar).15 E(guments to pass to cp in)-.18 E -.2(vo)
-.4 G(cation, none by def).2 E(ault)-.1 E F1(csp_SCPFLAGS)100 360 Q F0
-.15(ex)120 372 S(tra ar).15 E(guments to pass to scp in)-.18 E -.2(vo)
-.4 G(cation, e.g.).2 E(')5 E F1(-i .ssh/id_rsa-root)A F0(')A/F2 10.95
/Times-Bold@0 SF(EXAMPLES)20 388.8 Q F0(Some e)100 400.8 Q(xamples:)-.15
E/F3 10/Times-Bold@0 SF(Using csp_UHOST)100 424.8 Q F0
(This is the simplest w)100 436.8 Q(ay to use caspar.)-.1 E/F4 10
/Times-Italic@0 SF(Mak)2.5 E(e\214le)-.1 E F0(is)2.5 E F1
(csp_UHOST = root@some.host.somewhere)112 472.8 Q(csp_DIR = /etc/)112
484.8 Q(include caspar/mk/caspar.mk)112 496.8 Q F0(No)100 520.8 Q 1.997
-.65(w, r)-.25 H .697(unning "mak).65 F .698
(e" will scp all \214les in the current directory to)-.1 F F1
(root@some.host.some-)3.198 E(where:/etc/)100 532.8 Q F0(.)A F3(Mor)100
556.8 Q 2.5(eh)-.18 G(osts, not scp b)-2.5 E
(ut sudo via ssh: using csp_PUSH)-.2 E F4(Mak)100 568.8 Q(e\214le)-.1 E
F0(is)2.5 E F1
(csp_UHOSTS = root@some.host.somewhere root@some.other.host)112 604.8 Q
(csp_PUSH = $\(csp_sucp_FUNC\))112 616.8 Q(csp_DIR = /etc/)112 628.8 Q
(include caspar/mk/caspar.mk)112 640.8 Q F0(No)100 664.8 Q 2.803 -.65
(w, r)-.25 H 1.503(unning "mak).65 F 1.503(e" will use csp_sucp\(1\) to\
install all \214les in the current directory to both)-.1 F
(root@some.host.some)100 676.8 Q 2.726
(where:/etc/ and root@some.other.host:/etc/. If a \214le named)-.25 F F1
(fstab)5.227 E F0(is)5.227 E .264(present in the current directory)100
688.8 R 2.764(,r)-.65 G .264(unning "mak)-2.764 F 2.764(ef)-.1 G .264
(stab-install" will just install that one \214le.)-2.764 F .264(If you)
5.264 F(need to sudo\(1\) to another user on the remote host, add somet\
hing lik)100 700.8 Q(e)-.1 E(caspar 20170830)20 768 Q
<333020d0b0d0b2d0b32032303137>132.63 E(3)195.67 E 0 Cg EP
%%Page: 4 4
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF 151.385(caspar\(7\) MISCELLANEOUS)20 48 R
(caspar\(7\))156.385 E/F1 10/Courier@0 SF(csp_XARG = postgres)106 84 Q
F0 2.5(.\()100 108 S
(If such a username is not supplied, sudo \(and csp_sucp\) use the def)
-2.5 E(ault: root.\))-.1 E/F2 10/Times-Bold@0 SF(Ov)100 132 Q
(erriding csp_UHOSTS: csp_UHOSTS_SKIP)-.1 E F0 .243
(If one or some of your hosts are temporarily una)100 144 R -.25(va)-.2
G .243(ilable, and you').25 F 2.743(dl)-.5 G(ik)-2.743 E 2.744(et)-.1 G
2.744(op)-2.744 G .244(ush your \214les to the)-2.744 F 4.989
(hosts which are ali)100 156 R -.15(ve)-.25 G 7.488(,y).15 G 4.988
(ou can temporarily o)-7.488 F -.15(ve)-.15 G 4.988
(rride your csp_UHOSTS. E.g., when).15 F(some.other.host is not a)100
168 Q -.25(va)-.2 G(ilable:).25 E F1 6(%c)106 204 S(at Makefile)-6 E
(csp_UHOSTS = root@some.host.somewhere root@some.other.host)106 216 Q
(csp_DIR = /etc/)106 228 Q(include caspar/mk/caspar.mk)106 240 Q 6(%m)
106 264 S(ake install csp_UHOSTS_SKIP=root@some.other.host)-6 E
(scp hosts root@some.host.somewhere:/etc/)106 276 Q
(scp fstab root@some.host.somewhere:/etc/)106 288 Q F2(Ov)100 312 Q .543
(erriding csp_UHOSTS in a smart way: csp_UHOSTS_SUBSET. Using multiple \
gr)-.1 F(oups)-.18 E(of hosts. Recursi)100 324 Q .2 -.1(ve m)-.1 H(ak).1
E 2.5(em)-.1 G(ade easy.)-2.5 E F0 .507(If you ha)100 336 R .807 -.15
(ve l)-.2 H .506(ots of subdirectories holding information for lots of \
groups of hosts, while this run).15 F .725(you just w)100 348 R .725(an\
t to install for a small group \(or 1\) hosts, csp_UHOSTS_SUBSET is use\
ful.)-.1 F(Sup-)5.726 E(pose your casparized tree looks lik)100 360 Q(e)
-.1 E F1(Makefile)106 396 Q(apache/include/install.mk)106 420 Q
(apache/etc/apache2/Makefile)106 432 Q(apache/etc/apache2/envvars)106
444 Q(php/include/install.mk)106 468 Q(php/etc/php4/apache/Makefile)106
480 Q(php/etc/php4/apache/php.ini)106 492 Q(grub/include/install.mk)106
516 Q(grub/boot/grub/Makefile)106 528 Q(grub/boot/grub/menu.lst)106 540
Q(logrotate/include/install.mk)106 552 Q(logrotate/etc/Makefile)106 564
Q(logrotate/etc/logrotate.conf)106 576 Q(nrpe/include/install.mk)106 600
Q(nrpe/debian/etc/default/Makefile)106 612 Q
(nrpe/debian/etc/default/nagios-nrpe-server)106 624 Q F0(The \214le)100
648 Q/F3 10/Times-Italic@0 SF(apac)2.5 E(he/etc/apac)-.15 E(he2/Mak)-.15
E(e\214le)-.1 E F0(is:)2.5 E F1(csp_DIR = /etc/apache2/)106 684 Q
(include ../../include/install.mk)106 696 Q F0(\(all other)100 720 Q F3
(Mak)2.5 E(e\214le)-.1 E F0 2.5(sa)C(re similar\).)-2.5 E(The \214le)5 E
F3(apac)2.5 E(he/include/install.mk)-.15 E F0(is)2.5 E(caspar 20170830)
20 768 Q<333020d0b0d0b2d0b32032303137>132.63 E(4)195.67 E 0 Cg EP
%%Page: 5 5
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF 151.385(caspar\(7\) MISCELLANEOUS)20 48 R
(caspar\(7\))156.385 E/F1 10/Courier@0 SF(csp_UHOSTS = root@a root@b)106
84 Q(include caspar/mk/caspar.mk)106 96 Q F0 3.939(The \214le)100 120 R
/F2 10/Times-Italic@0 SF(php/include/install.mk)6.439 E F0 3.939
(is the same. The \214les)6.439 F F2(grub/include/install.mk)6.439 E F0
(and)6.439 E F2(lo)6.439 E(gr)-.1 E(o-)-.45 E(tate/include/install.mk)
100 132 Q F0(are)2.5 E F1(csp_UHOSTS = root@d root@e root@f root@g)106
168 Q(include caspar/mk/caspar.mk)106 180 Q F0(The \214le)100 204 Q F2
(nrpe/include/install.mk)2.5 E F0(is)2.5 E F1
(csp_UHOSTS = root@d root@e root@f root@n)106 240 Q
(include caspar/mk/caspar.mk)106 252 Q F0(The tople)100 276 Q -.15(ve)
-.25 G(l).15 E F2(Mak)2.5 E(e\214le)-.1 E F0(is)2.5 E F1
(dirs = $\(patsubst %/Makefile,%,$\(shell find * -mindepth 1)106 312 Q
(-name Makefile\)\))112 324 Q(all:)106 348 Q
(for i in $\(dirs\); do $\(MAKE\) -$\(MAKEFLAGS\) -C $$i; done)130 360 Q
(install)106 384 Q
(for i in $\(dirs\); do $\(MAKE\) -$\(MAKEFLAGS\) -C $$i install; done)
130 396 Q(load)106 420 Q
(for i in $\(dirs\); do $\(MAKE\) -$\(MAKEFLAGS\) -C $$i load; done)130
432 Q F0(\(we don')100 456 Q 2.5(tf)-.18 G(eel lik)-2.5 E 2.5(es)-.1 G
(ticking a)-2.5 E F2(Mak)2.5 E(e\214le)-.1 E F0
(in all non-leaf nodes of our tree\).)2.5 E(No)100 480 Q 4.735 -.65
(w, w)-.25 H 3.435(hen running ").65 F F1 3.435
(csp_UHOSTS_SUBSET='root@e root@f root@m root@n')B(make)100 492 Q F0
5.824("i)C 5.824(nt)-5.824 G 3.324(he tople)-5.824 F -.15(ve)-.25 G
3.324(l, caspar just tak).15 F 3.323
(es the intersection of csp_UHOSTS_SUBSET and)-.1 F 1.389
(csp_UHOSTS for each csp_UHOSTS list. So, caspar will not push an)100
504 R 1.39(ything for)-.15 F F2(apac)3.89 E(he/)-.15 E F0(and)3.89 E F2
(php/)100 516 Q F0 5.609(.T)C 3.109(he \214les)-5.609 F F2
(grub/boot/grub/menu.lst)5.609 E F0(and)5.609 E F2(lo)5.609 E(gr)-.1 E
(otate/etc/lo)-.45 E(gr)-.1 E(otate.conf)-.45 E F0 3.109
(will get pushed to)5.609 F F1(root@e)100 528 Q F0(and)2.686 E F1
(root@f)2.686 E F0 .187(only. The \214le)2.686 F F2
(nrpe/debian/etc/default/na)2.687 E(gios-nrpe-server)-.1 E F0 .187
(will get pushed)2.687 F(to)100 540 Q F1(root@e)2.5 E F0(,)A F1(root@f)
2.5 E F0(and)2.5 E F1(root@n)2.5 E F0(.)A 1.071
(This is often better than just o)100 564 R -.15(ve)-.15 G 1.071
(rriding csp_UHOSTS on the commandline \(or in your shell').15 F(s)-.55
E(en)100 576 Q 1.233(vironment\): if the intersection of the original c\
sp_UHOSTS and your ne)-.4 F 3.734(wc)-.25 G 1.234(sp_UHOSTS is)-3.734 F
(empty)100 588 Q 2.5(,c)-.65 G(hances are big you')-2.5 E .3 -.15(ve j)
-.5 H(ust for).15 E(gotten to clean your en)-.18 E(vironment.)-.4 E/F3
10/Times-Bold@0 SF(Cr)100 612 Q(eating r)-.18 E(emote dir)-.18 E
(ectories if needed)-.18 E F2(Mak)100 624 Q(e\214le)-.1 E F0(is)2.5 E F1
(csp_DIR = /some/dir/ectory/)112 660 Q
(csp_PUSH = $\(csp_scpmkdir_FUNC\))112 672 Q
(csp_UHOST = root@some.host.somewhere)112 684 Q
(include caspar/mk/caspar.mk)112 696 Q F0(No)100 720 Q 1.3 -.65(w, b)
-.25 H(efore calling scp, caspar will run 'mkdir -p' to create an).65 E
2.5(ym)-.15 G(issing remote directories.)-2.5 E(caspar 20170830)20 768 Q
<333020d0b0d0b2d0b32032303137>132.63 E(5)195.67 E 0 Cg EP
%%Page: 6 6
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF 151.385(caspar\(7\) MISCELLANEOUS)20 48 R
(caspar\(7\))156.385 E/F1 10/Times-Bold@0 SF(Using csp_CP and csp_LO)100
84 Q(AD)-.4 E/F2 10/Times-Italic@0 SF(username/etc/Mak)100 96 Q(e\214le)
-.1 E F0(is)2.5 E/F3 10/Courier@0 SF(csp_UHOST = dummy)112 132 Q
(csp_PUSH = $\(csp_cp_FUNC\))112 144 Q(csp_DIR = $\(HOME\)/etc/)112 156
Q(csp_LOAD = crontab-load)112 168 Q(include ../include/install.mk)112
180 Q(crontab-load = crontab $\(csp_DIR\)/crontab)112 204 Q F0(while)100
228 Q F2(../include/install.mk)2.5 E F0(is just)2.5 E F3
(include caspar/mk/caspar.mk)112 264 Q F0 6.523(.S)100 288 S(etting)
-6.523 E F3(csp_PUSH)4.023 E F0(to)4.023 E F3($\(csp_cp_FUNC\))4.023 E
F0 1.522(causes cp\(1\) to get e)4.023 F -.15(xe)-.15 G 1.522
(cuted by "mak).15 F 4.022(ei)-.1 G(nstall")-4.022 E .176
(\(not scp\(1\)\).)100 300 R(Setting)5.177 E F3(csp_LOAD)2.677 E F0 .177
(causes "mak)2.677 F 2.677(el)-.1 G .177(oad" to e)-2.677 F -.15(xe)-.15
G .177(cute the crontab command. Just run-).15 F(ning "mak)100 312 Q
(e" is OK too, since "mak)-.1 E(e" calls both "mak)-.1 E 2.5(ei)-.1 G
(nstall" and "mak)-2.5 E 2.5(el)-.1 G(oad".)-2.5 E F1
(Using csp_DIR, csp_LO)100 336 Q(AD and install\(1\))-.4 E F0 1.6 -.8
(To i)100 348 T(nstall a \214le on the local host, create e.g. a \214le)
.8 E F2(etc/uruk/Mak)2.5 E(e\214le)-.1 E F0(lik)2.5 E(e:)-.1 E F3
(csp_UHOST = dummy)112 384 Q(csp_DIR = /etc/uruk/)112 396 Q
(csp_PUSH = $\(csp_install_FUNC\))112 408 Q(csp_LOAD = uruk-load)112 420
Q(include caspar/mk/caspar.mk)112 444 Q
(uruk-load = sudo invoke-rc.d uruk force-reload)112 468 Q F1
(Using csp_DIR and csp_LO)100 492 Q(AD, tak)-.4 E 2.5(e2)-.1 G F2
(etc/Mak)100 504 Q(e\214le)-.1 E F0(is)2.5 E F3(csp_DIR = /etc/)112 540
Q(csp_LOAD = aliases-load)112 552 Q(include ../include/install.mk)112
564 Q(aliases-load = $\(csp_SSH\) $1 "cd /etc && postalias aliases; pos\
tfix reload")112 588 Q F0(while)100 612 Q F2(../include/install.mk)2.5 E
F0(is)2.5 E F3(csp_UHOST = root@some.host.somewhere)112 648 Q
(include caspar/mk/caspar.mk)112 660 Q F1(Building \214les locally)100
684 Q F0 .471(Note: csp_B)100 696 R .471(UILD is deprecated. Y)-.1 F
.471(ou should not use it.)-1.1 F .471(If you')5.471 F 2.97(dl)-.5 G(ik)
-2.97 E 2.97(et)-.1 G 2.97(ob)-2.97 G .47(uild some \214les locally)
-3.17 F(from local sources, before installing the just b)100 708 Q
(uilt \214les, do e.g.:)-.2 E(caspar 20170830)20 768 Q
<333020d0b0d0b2d0b32032303137>132.63 E(6)195.67 E 0 Cg EP
%%Page: 7 7
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF 151.385(caspar\(7\) MISCELLANEOUS)20 48 R
(caspar\(7\))156.385 E/F1 10/Courier@0 SF
(csp_UHOST = root@some.host.somewhere)106 84 Q(csp_DIR = /etc/)106 96 Q
(csp_EXTRAFILES = sshd_config)106 108 Q
(csp_TABOOFILES_ADD = sshd_config.m4)106 120 Q
(include caspar/mk/caspar.mk)106 144 Q(sshd_config: sshd_config.m4)106
168 Q(m4 $< > $@)130 180 Q F0 2.317(List all source \214les in csp_T)100
204 R 2.318(ABOOFILES_ADD: this w)-.93 F(ay)-.1 E 4.818(,t)-.65 G(he)
-4.818 E 4.818(yw)-.15 G(on')-4.918 E 4.818(tg)-.18 G 2.318
(et installed on the)-4.818 F(csp_UHOST.)100 216 Q/F2 10/Times-Bold@0 SF
(Using csp_sucp_FUNC and csp_LO)100 240 Q(AD)-.4 E F0(If you')100 252 Q
2.5(dl)-.5 G(ik)-2.5 E 2.5(et)-.1 G 2.5(ou)-2.5 G(se csp_sucp and w)-2.5
E(ant a `load' tar)-.1 E(get, do something lik)-.18 E(e:)-.1 E F1
(csp_PUSH = $\(csp_sucp_FUNC\))106 288 Q(csp_UHOST = foobar.example.com)
106 300 Q(csp_DIR = /etc/uruk/)106 312 Q(csp_LOAD = rc-load)106 324 Q
(include caspar/mk/caspar.mk)106 348 Q
(rc-load = $\(csp_SSH\) $1 sudo invoke-rc.d uruk force-reload)106 372 Q
F0(caspar 20170830)20 768 Q<333020d0b0d0b2d0b32032303137>132.63 E(7)
195.67 E 0 Cg EP
%%Trailer
end
%%EOF
caspar-20170830/doc/caspar.txt 0000644 0001751 0001751 00000024475 13151515327 012752 0000000 0000000 30 авг 2017 caspar 20170830
NAME
caspar - Makefile snippets for common tasks
SYNOPSIS
In a Makefile, write either
include caspar/mk/caspar.mk
or
include caspar/mk/docbook.mk
or
include caspar/mk/pod.mk
.
DESCRIPTION
Caspar offers Makefile snippets for common tasks, like installing
(configuration) files, or typesetting LaTeX, DocBook XML and DocBook SGML
documents.
The typesetting functionality is delivered by docbook.mk and pod.mk. This is
documented in caspar-typesetting(7).
The installing-stuff functionality is delivered by caspar.mk. (That's what the
rest of the manual will talk about.) It enables one to run 'make install' from
within a tree which typically holds configuration files, managed using
Subversion (or git or any other version control system, for that matter).
It is useful in cases like this: all configuration files of some host are under
version control, and, after commiting a change to CVS, you want to be able to
easily install the new configuration file on the host.
With caspar, all you have to do is specify the hostname in one place, and
specify the name of the target directory in each CVS directory.
It is comparable with other tools for Unix system administrators like puppet
and cfengine. Main difference: the caspar code consists of less than 100 lines
of GNU Make.
USAGE
Within a CVS tree, create a file include/install.mk, with contents like e.g.
csp_UHOST = root@some.host.somewhere include caspar/mk/caspar.mk
. Within each other directory of the CVS tree which holds files, create a
Makefile, which looks like e.g.
csp_DIR = /some/dir/ectory/ include ../../include/install.mk
. If you'd like to use the install-recursive target too, in directories which
hold subdirectories (but not files), you'll have to create a Makefile which
looks something like
include ../../include/install.mk
. From within the CVS tree, one can call:
make -diff make -install make diff make install make load
make make install-recursive
Calling make -diff shows the diff between the local file and the file
as currently installed on the remote location. Calling make install (or make)
now will scp all files in the current directory to the remote location. The
install-recursive target descends down the tree, and calls make install in each
subdirectory.
Of course, you'll have to be able to ssh directly as root to the remote host to
get this working (if you'd like to use csp_UHOST = root@some.host.somewhere).
If you don't like this, and would like to have a PermitRootLogin no in your /
etc/ssh/sshd_config, you can use csp_sucp(1). See below.
VARIABLES
The variables one can set in a calling Makefile are:
csp_UHOST
user@host, reachable using $(csp_PUSH) (which is scp by default)
csp_UHOSTS
space separated list of user@host items, reachable using $(csp_PUSH)
csp_DIR
directory on host, reachable using function $(csp_PUSH)
csp_PUSH
make function for pushing files to remote location. Usually, this is a wrapper
around a script or program. The function will be passed 4 arguments: [user@]
host, remote directory and local filename. [user@]host will be set to all
elements of $(csp_UHOSTS); directory will be set to $(csp_DIR). Currently, $
(csp_scp_FUNC), $(csp_cp_FUNC) and $(csp_sucp_FUNC) are supported as push
plugins. If csp_PUSH is unset, the default $(csp_scp_FUNC) is used.
csp_LOAD
the `load' target depends upon these targets.
csp_BUILD
the `build' target depends upon these targets.
csp_CP
cp binary, just "cp" by default
csp_SCP
scp binary, just "scp" by default
csp_SUCP
script wrapping sudo in ssh, "csp_sucp" by default
csp_EXTRAFILES
extra files which should be installed. Can be used to include files starting
with a dot.
csp_TABOOFILES
files which should never be installed. Set to Makefile .%.swp %~ #%#
pod2htmd.tmp pod2htmi.tmp by default.
csp_TABOOFILES_ADD
extra files which should never be installed; added to list in csp_TABOOFILES.
csp_TABOOFILES_SKIP
files which should be installed, even if in initial csp_TABOOFILES list.
Removed from csp_TABOOFILES list.
csp_TABOODIRS
directories to exclude in install-recursive target. set to CVS .svn by default.
csp_TABOODIRS_ADD, csp_TABOODIRS_SKIP
see csp_TABOOFILES equivalents.
csp_UHOSTS_SUBSET
override csp_UHOSTS: don't push to csp_UHOSTS, but to the intersection of this
space separated list of user@host items and csp_UHOSTS.
The following variables might get phased out or removed soonish:
csp_CPFLAGS
extra arguments to pass to cp invocation, none by default
csp_SCPFLAGS
extra arguments to pass to scp invocation, e.g. '-i .ssh/id_rsa-root'
EXAMPLES
Some examples:
Using csp_UHOST
This is the simplest way to use caspar. Makefile is
csp_UHOST = root@some.host.somewhere csp_DIR = /etc/ include caspar/mk/
caspar.mk
Now, running "make" will scp all files in the current directory to
root@some.host.somewhere:/etc/.
More hosts, not scp but sudo via ssh: using csp_PUSH
Makefile is
csp_UHOSTS = root@some.host.somewhere root@some.other.host csp_PUSH = $
(csp_sucp_FUNC) csp_DIR = /etc/ include caspar/mk/caspar.mk
Now, running "make" will use csp_sucp(1) to install all files in the current
directory to both root@some.host.somewhere:/etc/ and root@some.other.host:/etc
/. If a file named fstab is present in the current directory, running "make
fstab-install" will just install that one file. If you need to sudo(1) to
another user on the remote host, add something like
csp_XARG = postgres
. (If such a username is not supplied, sudo (and csp_sucp) use the default:
root.)
Overriding csp_UHOSTS: csp_UHOSTS_SKIP
If one or some of your hosts are temporarily unavailable, and you'd like to
push your files to the hosts which are alive, you can temporarily override your
csp_UHOSTS. E.g., when some.other.host is not available:
% cat Makefile csp_UHOSTS = root@some.host.somewhere root@some.other.host
csp_DIR = /etc/ include caspar/mk/caspar.mk % make install csp_UHOSTS_SKIP=
root@some.other.host scp hosts root@some.host.somewhere:/etc/ scp fstab
root@some.host.somewhere:/etc/
Overriding csp_UHOSTS in a smart way: csp_UHOSTS_SUBSET. Using multiple groups
of hosts. Recursive make made easy.
If you have lots of subdirectories holding information for lots of groups of
hosts, while this run you just want to install for a small group (or 1) hosts,
csp_UHOSTS_SUBSET is useful. Suppose your casparized tree looks like
Makefile apache/include/install.mk apache/etc/apache2/Makefile apache/etc/
apache2/envvars php/include/install.mk php/etc/php4/apache/Makefile php/etc/
php4/apache/php.ini grub/include/install.mk grub/boot/grub/Makefile grub/boot/
grub/menu.lst logrotate/include/install.mk logrotate/etc/Makefile logrotate/etc
/logrotate.conf nrpe/include/install.mk nrpe/debian/etc/default/Makefile nrpe/
debian/etc/default/nagios-nrpe-server
The file apache/etc/apache2/Makefile is:
csp_DIR = /etc/apache2/ include ../../include/install.mk
(all other Makefiles are similar). The file apache/include/install.mk is
csp_UHOSTS = root@a root@b include caspar/mk/caspar.mk
The file php/include/install.mk is the same. The files grub/include/install.mk
and logrotate/include/install.mk are
csp_UHOSTS = root@d root@e root@f root@g include caspar/mk/caspar.mk
The file nrpe/include/install.mk is
csp_UHOSTS = root@d root@e root@f root@n include caspar/mk/caspar.mk
The toplevel Makefile is
dirs = $(patsubst %/Makefile,%,$(shell find * -mindepth 1 -name Makefile)) all:
for i in $(dirs); do $(MAKE) -$(MAKEFLAGS) -C $$i; done install for i in $
(dirs); do $(MAKE) -$(MAKEFLAGS) -C $$i install; done load for i in $(dirs); do
$(MAKE) -$(MAKEFLAGS) -C $$i load; done
(we don't feel like sticking a Makefile in all non-leaf nodes of our tree).
Now, when running "csp_UHOSTS_SUBSET='root@e root@f root@m root@n' make" in the
toplevel, caspar just takes the intersection of csp_UHOSTS_SUBSET and
csp_UHOSTS for each csp_UHOSTS list. So, caspar will not push anything for
apache/ and php/. The files grub/boot/grub/menu.lst and logrotate/etc/
logrotate.conf will get pushed to root@e and root@f only. The file nrpe/debian/
etc/default/nagios-nrpe-server will get pushed to root@e, root@f and root@n.
This is often better than just overriding csp_UHOSTS on the commandline (or in
your shell's environment): if the intersection of the original csp_UHOSTS and
your new csp_UHOSTS is empty, chances are big you've just forgotten to clean
your environment.
Creating remote directories if needed
Makefile is
csp_DIR = /some/dir/ectory/ csp_PUSH = $(csp_scpmkdir_FUNC) csp_UHOST =
root@some.host.somewhere include caspar/mk/caspar.mk
Now, before calling scp, caspar will run 'mkdir -p' to create any missing
remote directories.
Using csp_CP and csp_LOAD
username/etc/Makefile is
csp_UHOST = dummy csp_PUSH = $(csp_cp_FUNC) csp_DIR = $(HOME)/etc/ csp_LOAD =
crontab-load include ../include/install.mk crontab-load = crontab $(csp_DIR)/
crontab
while ../include/install.mk is just
include caspar/mk/caspar.mk
. Setting csp_PUSH to $(csp_cp_FUNC) causes cp(1) to get executed by "make
install" (not scp(1)). Setting csp_LOAD causes "make load" to execute the
crontab command. Just running "make" is OK too, since "make" calls both "make
install" and "make load".
Using csp_DIR, csp_LOAD and install(1)
To install a file on the local host, create e.g. a file etc/uruk/Makefile like:
csp_UHOST = dummy csp_DIR = /etc/uruk/ csp_PUSH = $(csp_install_FUNC) csp_LOAD
= uruk-load include caspar/mk/caspar.mk uruk-load = sudo invoke-rc.d uruk
force-reload
Using csp_DIR and csp_LOAD, take 2
etc/Makefile is
csp_DIR = /etc/ csp_LOAD = aliases-load include ../include/install.mk
aliases-load = $(csp_SSH) $1 "cd /etc && postalias aliases; postfix reload"
while ../include/install.mk is
csp_UHOST = root@some.host.somewhere include caspar/mk/caspar.mk
Building files locally
Note: csp_BUILD is deprecated. You should not use it. If you'd like to build
some files locally from local sources, before installing the just built files,
do e.g.:
csp_UHOST = root@some.host.somewhere csp_DIR = /etc/ csp_EXTRAFILES =
sshd_config csp_TABOOFILES_ADD = sshd_config.m4 include caspar/mk/caspar.mk
sshd_config: sshd_config.m4 m4 $< > $@
List all source files in csp_TABOOFILES_ADD: this way, they won't get installed
on the csp_UHOST.
Using csp_sucp_FUNC and csp_LOAD
If you'd like to use csp_sucp and want a `load' target, do something like:
csp_PUSH = $(csp_sucp_FUNC) csp_UHOST = foobar.example.com csp_DIR = /etc/uruk/
csp_LOAD = rc-load include caspar/mk/caspar.mk rc-load = $(csp_SSH) $1 sudo
invoke-rc.d uruk force-reload
caspar-20170830/doc/caspar-typesetting.html 0000644 0001751 0001751 00000017217 13151515327 015450 0000000 0000000
caspar-typesetting
30 авг 2017
caspar-typesetting
20170830
NAME
caspar-typesetting - Makefile snippets for common typesetting tasks
SYNOPSIS
In a Makefile, write
include caspar/mk/docbook.mk
or
include caspar/mk/pod.mk
.
DESCRIPTION
The caspar docbook.mk and pod.mk files are Makefile snippets for common
typesetting tasks, like typesetting LaTeX (see [3]), DocBook
XML, DocBook SGML (see [2]) and POD (see [1]) documents.
You just have to type make, instead of stuff like jade -t tex -d
caspar/print.dsl /usr/share/sgml/declaration/xml.dcl foobar.dbx.
USAGE
In a directory where you maintain .dbx (Docbook XML) or .tex (LaTeX) files, do
$ echo include caspar/mk/docbook.mk > Makefile
$ vi karenina.dbx
$ make karenina.view
$ make karenina.print
$ vi svejk.tex
$ make svejk.view
$ make svejk.print
$ make
$ make clean
Other targets: filename.ps, filename.pdf, filename.2ps, filename.html,
filename.printbig, filename.dvi.
Variables you might like to set in your Makefile: XMLDCL (default is
/usr/share/sgml/declaration/xml.dcl; if you're not on a Debian GNU/Linux
system, you'll likely have to adjust this), HTML_DSL, PRINT_DSL.
In a directory where you maintain .pod files, do
$ echo include caspar/mk/pod.mk > Makefile
$ vi lire.pod
$ perldoc ./lire.pod
$ make lire.pdf
$ make
$ less lire.overstrike-txt
$ make clean
Other targets: filename.ps, filename.html, filename.txt, ...
(Similar to the ones supplied by docbook.mk).
EXAMPLES
Some examples: Overriding the caspar-supplied DSSSL files: Create your own
print.dls and html.dsl, in the same directory as your Docbook XML files. Your
Makefile should read:
PRINT_DSL = print.dsl
HTML_DSL = html.dsl
include caspar/mk/docbook.mk
Overriding the standard html-to-text convertor:
$ W3M=lynx make svejk.txt
.
FILES
caspar/mk/docbook.mk, caspar/mk/pod.mk
ENVIRONMENT
For docbook.mk: files: XMLDCL, HTML_DSL, PRINT_DSL;
utilities: JADE, PDFJADETEX, PDFLATEX, JADETEX, LATEX,
W3M, DVIPS, PSNUP, LPR, GV; settings:
JADE_MAXERRORS. These variables can get adjusted in Makefile, as well as
in the shell environment.
pod.mk Uses no environment variables.
AUTHOR
Joost van Baal-Ilić
SEE ALSO
caspar(7)
[1]
perlpod(1) about Perl's Plain Old Documentation format
[2]
DocBook: The Definitive Guide on http://docbook.org/,
[3]
The LaTeX Project Homepage on http://www.latex-project.org/.
Some comments on advanced usage are in the files docbook.mk and pod.mk
itself.
caspar-20170830/doc/caspar-typesetting.ps 0000644 0001751 0001751 00000026157 13151515327 015131 0000000 0000000 %!PS-Adobe-3.0
%%Creator: groff version 1.22.2
%%CreationDate: Wed Aug 30 13:00:39 2017
%%DocumentNeededResources: font Times-Roman
%%+ font Times-Bold
%%+ font Courier
%%+ font Times-Italic
%%DocumentSuppliedResources: procset grops 1.22 2
%%Pages: 2
%%PageOrder: Ascend
%%DocumentMedia: Default 595 842 0 () ()
%%Orientation: Portrait
%%EndComments
%%BeginDefaults
%%PageMedia: Default
%%EndDefaults
%%BeginProlog
%%BeginResource: procset grops 1.22 2
%!PS-Adobe-3.0 Resource-ProcSet
/setpacking where{
pop
currentpacking
true setpacking
}if
/grops 120 dict dup begin
/SC 32 def
/A/show load def
/B{0 SC 3 -1 roll widthshow}bind def
/C{0 exch ashow}bind def
/D{0 exch 0 SC 5 2 roll awidthshow}bind def
/E{0 rmoveto show}bind def
/F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def
/G{0 rmoveto 0 exch ashow}bind def
/H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/I{0 exch rmoveto show}bind def
/J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def
/K{0 exch rmoveto 0 exch ashow}bind def
/L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/M{rmoveto show}bind def
/N{rmoveto 0 SC 3 -1 roll widthshow}bind def
/O{rmoveto 0 exch ashow}bind def
/P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/Q{moveto show}bind def
/R{moveto 0 SC 3 -1 roll widthshow}bind def
/S{moveto 0 exch ashow}bind def
/T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def
/SF{
findfont exch
[exch dup 0 exch 0 exch neg 0 0]makefont
dup setfont
[exch/setfont cvx]cvx bind def
}bind def
/MF{
findfont
[5 2 roll
0 3 1 roll
neg 0 0]makefont
dup setfont
[exch/setfont cvx]cvx bind def
}bind def
/level0 0 def
/RES 0 def
/PL 0 def
/LS 0 def
/MANUAL{
statusdict begin/manualfeed true store end
}bind def
/PLG{
gsave newpath clippath pathbbox grestore
exch pop add exch pop
}bind def
/BP{
/level0 save def
1 setlinecap
1 setlinejoin
DEFS/BPhook known{DEFS begin BPhook end}if
72 RES div dup scale
LS{
90 rotate
}{
0 PL translate
}ifelse
1 -1 scale
}bind def
/EP{
level0 restore
showpage
}def
/DA{
newpath arcn stroke
}bind def
/SN{
transform
.25 sub exch .25 sub exch
round .25 add exch round .25 add exch
itransform
}bind def
/DL{
SN
moveto
SN
lineto stroke
}bind def
/DC{
newpath 0 360 arc closepath
}bind def
/TM matrix def
/DE{
TM currentmatrix pop
translate scale newpath 0 0 .5 0 360 arc closepath
TM setmatrix
}bind def
/RC/rcurveto load def
/RL/rlineto load def
/ST/stroke load def
/MT/moveto load def
/CL/closepath load def
/Fr{
setrgbcolor fill
}bind def
/setcmykcolor where{
pop
/Fk{
setcmykcolor fill
}bind def
}if
/Fg{
setgray fill
}bind def
/FL/fill load def
/LW/setlinewidth load def
/Cr/setrgbcolor load def
/setcmykcolor where{
pop
/Ck/setcmykcolor load def
}if
/Cg/setgray load def
/RE{
findfont
dup maxlength 1 index/FontName known not{1 add}if dict begin
{
1 index/FID ne
2 index/UniqueID ne
and
{def}{pop pop}ifelse
}forall
/Encoding exch def
dup/FontName exch def
currentdict end definefont pop
}bind def
/DEFS 0 def
/EBEGIN{
moveto
DEFS begin
}bind def
/EEND/end load def
/CNT 0 def
/level1 0 def
/PBEGIN{
/level1 save def
translate
div 3 1 roll div exch scale
neg exch neg exch translate
0 setgray
0 setlinecap
1 setlinewidth
0 setlinejoin
10 setmiterlimit
[]0 setdash
/setstrokeadjust where{
pop
false setstrokeadjust
}if
/setoverprint where{
pop
false setoverprint
}if
newpath
/CNT countdictstack def
userdict begin
/showpage{}def
/setpagedevice{}def
mark
}bind def
/PEND{
cleartomark
countdictstack CNT sub{end}repeat
level1 restore
}bind def
end def
/setpacking where{
pop
setpacking
}if
%%EndResource
%%EndProlog
%%BeginSetup
%%BeginFeature: *PageSize Default
<< /PageSize [ 595 842 ] /ImagingBBox null >> setpagedevice
%%EndFeature
%%IncludeResource: font Times-Roman
%%IncludeResource: font Times-Bold
%%IncludeResource: font Courier
%%IncludeResource: font Times-Italic
grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72
def/PL 841.89 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron
/Zcaron/scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent
/ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen
/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon
/semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O
/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex
/underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y
/z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft
/guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl
/endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut
/dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash
/quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen
/brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft
/logicalnot/minus/registered/macron/degree/plusminus/twosuperior
/threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior
/ordmasculine/guilsinglright/onequarter/onehalf/threequarters
/questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE
/Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex
/Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis
/multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn
/germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla
/egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis
/eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash
/ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def
/Times-Italic@0 ENC0/Times-Italic RE/Courier@0 ENC0/Courier RE
/Times-Bold@0 ENC0/Times-Bold RE/Times-Roman@0 ENC0/Times-Roman RE
%%EndSetup
%%Page: 1 1
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(caspar)20 48 Q 104.365
(-typesetting\(7\) MISCELLANEOUS)-.2 F(caspar)109.365 E
(-typesetting\(7\))-.2 E/F1 10.95/Times-Bold@0 SF -.219(NA)20 84 S(ME)
.219 E F0(caspar)100 96 Q(-typesetting - Mak)-.2 E
(e\214le snippets for common typesetting tasks)-.1 E F1(SYNOPSIS)20
112.8 Q F0(In a Mak)100 124.8 Q(e\214le, write)-.1 E/F2 10/Courier@0 SF
(include caspar/mk/docbook.mk)112 160.8 Q F0(or)100 184.8 Q F2
(include caspar/mk/pod.mk)112 220.8 Q F0(.)100 244.8 Q F1(DESCRIPTION)20
261.6 Q F0 1.26(The caspar)100 273.6 R/F3 10/Times-Italic@0 SF
(docbook.mk)3.76 E F0(and)3.759 E F3(pod.mk)3.759 E F0 1.259
(\214les are Mak)3.759 F 1.259
(e\214le snippets for common typesetting tasks,)-.1 F(lik)100 285.6 Q
3.015(et)-.1 G .515(ypesetting LaT)-3.015 F .516(eX \(see [3]\), DocBoo\
k XML, DocBook SGML \(see [2]\) and POD \(see [1]\))-.7 F 4.362
(documents. Y)100 297.6 R 1.862(ou just ha)-1.1 F 2.162 -.15(ve t)-.2 H
4.362(ot).15 G(ype)-4.362 E F2(make)4.362 E F0 4.362(,i)C 1.862
(nstead of stuf)-4.362 F 4.362(fl)-.25 G(ik)-4.362 E(e)-.1 E F2 1.862
(jade -t tex -d cas-)4.362 F
(par/print.dsl /usr/share/sgml/declaration/xml.dcl foobar.dbx)100 309.6
Q F0(.)A F1(USA)20 326.4 Q(GE)-.602 E F0
(In a directory where you maintain .dbx \(Docbook XML\) or .te)100 338.4
Q 2.5(x\()-.15 G(LaT)-2.5 E(eX\) \214les, do)-.7 E F2 6($e)118 374.4 S
(cho include caspar/mk/docbook.mk > Makefile)-6 E 6($v)118 398.4 S 6(ik)
-6 G(arenina.dbx)-6 E 6($m)118 410.4 S(ake karenina.view)-6 E 6($m)118
422.4 S(ake karenina.print)-6 E 6($v)118 446.4 S 6(is)-6 G(vejk.tex)-6 E
6($m)118 458.4 S(ake svejk.view)-6 E 6($m)118 470.4 S(ake svejk.print)-6
E 6($m)118 494.4 S(ake)-6 E 6($m)118 506.4 S(ake clean)-6 E F0 5.094
(Other tar)100 530.4 R(gets:)-.18 E F2(filename.ps)7.594 E F0(,)A F2
(filename.pdf)7.594 E F0(,)A F2(filename.2ps)7.594 E F0(,)A F2
(filename.html)7.594 E F0(,)A F2(filename.printbig)100 542.4 Q F0(,)A F2
(filename.dvi)2.5 E F0(.)A -1.11(Va)100 566.4 S 10.287
(riables you might lik)1.11 F 12.787(et)-.1 G 12.786(os)-12.787 G 10.286
(et in your Mak)-12.786 F(e\214le:)-.1 E F2(XMLDCL)12.786 E F0(\(def)
12.786 E 10.286(ault is)-.1 F F2(/usr/share/sgml/declaration/xml.dcl)100
578.4 Q F0 2.871(;i)C 2.871(fy)-2.871 G(ou')-2.871 E .371
(re not on a Debian GNU/Linux sys-)-.5 F(tem, you')100 590.4 Q(ll lik)
-.1 E(ely ha)-.1 E .3 -.15(ve t)-.2 H 2.5(oa).15 G(djust this\),)-2.5 E
F2(HTML_DSL)2.5 E F0(,)A F2(PRINT_DSL)2.5 E F0(.)A
(In a directory where you maintain .pod \214les, do)100 614.4 Q(caspar)
20 768 Q(-typesetting 20170830)-.2 E<333020d0b0d0b2d0b32032303137>85.61
E(1)195.67 E 0 Cg EP
%%Page: 2 2
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(caspar)20 48 Q 104.365
(-typesetting\(7\) MISCELLANEOUS)-.2 F(caspar)109.365 E
(-typesetting\(7\))-.2 E/F1 10/Courier@0 SF 6($e)118 84 S
(cho include caspar/mk/pod.mk > Makefile)-6 E 6($v)118 96 S 6(il)-6 G
(ire.pod)-6 E 6($p)118 108 S(erldoc ./lire.pod)-6 E 6($m)118 120 S
(ake lire.pdf)-6 E 6($m)118 132 S(ake)-6 E 6($l)118 144 S
(ess lire.overstrike-txt)-6 E 6($m)118 156 S(ake clean)-6 E F0 .985
(Other tar)100 180 R(gets:)-.18 E F1(filename.ps)3.485 E F0(,)A F1
(filename.html)3.485 E F0(,)A F1(filename.txt)3.485 E F0 3.484(,.)C
3.484(.. \(Similar)-3.484 F .984(to the ones)3.484 F(supplied by)100 192
Q/F2 10/Times-Italic@0 SF(docbook.mk)2.5 E F0(\).)A/F3 10.95
/Times-Bold@0 SF(EXAMPLES)20 208.8 Q F0 1.859(Some e)100 220.8 R 1.859
(xamples: Ov)-.15 F 1.859(erriding the caspar)-.15 F 1.859
(-supplied DSSSL \214les: Create your o)-.2 F 1.859(wn print.dls and)
-.25 F(html.dsl, in the same directory as your Docbook XML \214les. Y)
100 232.8 Q(our Mak)-1.1 E(e\214le should read:)-.1 E F1
(PRINT_DSL = print.dsl)106 268.8 Q(HTML_DSL = html.dsl)106 280.8 Q
(include caspar/mk/docbook.mk)106 292.8 Q F0(Ov)100 316.8 Q
(erriding the standard html-to-te)-.15 E(xt con)-.15 E -.15(ve)-.4 G
(rtor:).15 E F1 6($W)106 352.8 S(3M=lynx make svejk.txt)-6 E F0(.)100
376.8 Q F3(FILES)20 393.6 Q F2(caspar/mk/docbook.mk)100 405.6 Q F0(,)A
F2(caspar/mk/pod.mk)2.5 E F3(ENVIR)20 422.4 Q(ONMENT)-.329 E F0 -.15(Fo)
100 434.4 S(r).15 E F2(docbook.mk)4.553 E F0 4.553<3a8c>C(les:)-4.553 E
F1(XMLDCL)4.553 E F0(,)A F1(HTML_DSL)4.553 E F0(,)A F1(PRINT_DSL)4.552 E
F0 4.552(;u)C(tilities:)-4.552 E F1(JADE)4.552 E F0(,)A F1(PDFJADETEX)
4.552 E F0(,)A F1(PDFLATEX)100 446.4 Q F0(,)A F1(JADETEX)4.486 E F0(,)A
F1(LATEX)4.486 E F0(,)A F1(W3M)4.486 E F0(,)A F1(DVIPS)4.487 E F0(,)A F1
(PSNUP)4.487 E F0(,)A F1(LPR)4.487 E F0(,)A F1(GV)4.487 E F0 4.487(;s)C
(ettings:)-4.487 E F1(JADE_MAXER-)4.487 E(RORS)100 458.4 Q F0 2.5(.T)C
(hese v)-2.5 E(ariables can get adjusted in Mak)-.25 E
(e\214le, as well as in the shell en)-.1 E(vironment.)-.4 E F2(pod.mk)
100 482.4 Q F0(Uses no en)2.5 E(vironment v)-.4 E(ariables.)-.25 E F3
-.548(AU)20 499.2 S(THOR).548 E F0(Joost v)100 511.2 Q(an Baal-Ili\304)
-.25 E F3(SEE ALSO)20 528 Q/F4 10/Times-Bold@0 SF(caspar\(7\))100 540 Q
F0([1] perlpod\(1\) about Perl')2.5 E 2.5(sP)-.55 G
(lain Old Documentation format)-2.5 E([2])100 564 Q F2
(DocBook: The De\214nitive Guide)2.5 E F0(on http://docbook.or)2.5 E
(g/,)-.18 E([3] The LaT)100 588 Q
(eX Project Homepage on http://www.late)-.7 E(x-project.or)-.15 E(g/.)
-.18 E(Some comments on adv)100 612 Q(anced usage are in the \214les)
-.25 E F2(docbook.mk)2.5 E F0(and)2.5 E F2(pod.mk)2.5 E F0(itself.)2.5 E
(caspar)20 768 Q(-typesetting 20170830)-.2 E
<333020d0b0d0b2d0b32032303137>85.61 E(2)195.67 E 0 Cg EP
%%Trailer
end
%%EOF
caspar-20170830/doc/caspar-typesetting.txt 0000644 0001751 0001751 00000004730 13151515327 015317 0000000 0000000 30 авг 2017 caspar-typesetting 20170830
1.
NAME
2.
SYNOPSIS
3.
DESCRIPTION
4.
USAGE
5.
EXAMPLES
6.
FILES
7.
ENVIRONMENT
8.
AUTHOR
9.
SEE ALSO
NAME
caspar-typesetting - Makefile snippets for common typesetting tasks
SYNOPSIS
In a Makefile, write
include caspar/mk/docbook.mk
or
include caspar/mk/pod.mk
.
DESCRIPTION
The caspar docbook.mk and pod.mk files are Makefile snippets for common
typesetting tasks, like typesetting LaTeX (see [3]), DocBook XML, DocBook SGML
(see [2]) and POD (see [1]) documents. You just have to type make, instead of
stuff like jade -t tex -d caspar/print.dsl /usr/share/sgml/declaration/xml.dcl
foobar.dbx.
USAGE
In a directory where you maintain .dbx (Docbook XML) or .tex (LaTeX) files, do
$ echo include caspar/mk/docbook.mk > Makefile $ vi karenina.dbx $ make
karenina.view $ make karenina.print $ vi svejk.tex $ make svejk.view $ make
svejk.print $ make $ make clean
Other targets: filename.ps, filename.pdf, filename.2ps, filename.html,
filename.printbig, filename.dvi.
Variables you might like to set in your Makefile: XMLDCL (default is /usr/share
/sgml/declaration/xml.dcl; if you're not on a Debian GNU/Linux system, you'll
likely have to adjust this), HTML_DSL, PRINT_DSL.
In a directory where you maintain .pod files, do
$ echo include caspar/mk/pod.mk > Makefile $ vi lire.pod $ perldoc ./lire.pod $
make lire.pdf $ make $ less lire.overstrike-txt $ make clean
Other targets: filename.ps, filename.html, filename.txt, ... (Similar to the
ones supplied by docbook.mk).
EXAMPLES
Some examples: Overriding the caspar-supplied DSSSL files: Create your own
print.dls and html.dsl, in the same directory as your Docbook XML files. Your
Makefile should read:
PRINT_DSL = print.dsl HTML_DSL = html.dsl include caspar/mk/docbook.mk
Overriding the standard html-to-text convertor:
$ W3M=lynx make svejk.txt
.
FILES
caspar/mk/docbook.mk, caspar/mk/pod.mk
ENVIRONMENT
For docbook.mk: files: XMLDCL, HTML_DSL, PRINT_DSL; utilities: JADE,
PDFJADETEX, PDFLATEX, JADETEX, LATEX, W3M, DVIPS, PSNUP, LPR, GV; settings:
JADE_MAXERRORS. These variables can get adjusted in Makefile, as well as in the
shell environment.
pod.mk Uses no environment variables.
AUTHOR
Joost van Baal-Ilić
SEE ALSO
caspar(7) [1] perlpod(1) about Perl's Plain Old Documentation format
[2] DocBook: The Definitive Guide on http://docbook.org/,
[3] The LaTeX Project Homepage on http://www.latex-project.org/.
Some comments on advanced usage are in the files docbook.mk and pod.mk itself.
caspar-20170830/doc/casparize.azm 0000644 0001751 0001751 00000005377 13151515253 013430 0000000 0000000 \: vim:syntax=tex
\: this is a manpage in zoem format. see http://micans.org/zoem/ and man_zmm(7)
\: This file is maintained at http://git.mdcc.cx/caspar
\: casparize script manpage
\: Copyright (C) 2009 Jeroen Hoppenbrouwers
\:
\: 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 3 of the License, 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, see .
\import{pud/man.zmm}
\import{./include.zmm}
\begin{pud::man}{
{name}{casparize}
{html_title}{casparize}
{section}{1}
\man_share
}
\${html}{\"pud::man::maketoc"}
\def{caspar}{\bf{caspar}}
\def{casparize}{\bf{casparize}}
\sec{name}{NAME}
\NAME{casparize}{Set up \caspar Makefile in a new directory}
\sec{synopsis}{SYNOPSIS}
\par{
\casparize
\synreqopt{dir}{/path/to/config/dir}
}
\par{
\casparize
\synreqopt{file}{/path/to/config/dir/file}
}
\sec{description}{DESCRIPTION}
\casparize creates a new configuration working directory in your current
working directory, sets up a Makefile for \sibref{caspar}{caspar(7)} in
this new directory,
and optionally copies an original configuration file from its original
system place to the newly created configuration working directory.
\sec{usage}{USAGE}
You typically use \casparize when you already have created the root
configuration working directory with its include directory and install.mk
Caspar include file. By analysing your current working directory and the
configuration directory path you give on the command line, casparize can
deduce the contents of the Makefile in the newly created configuration
working directory. It creates the new directory, creates the correct
Makefile, and optionally copies the given configuration file in the new
directory, ready for its first version commit.
\sec{examples}{EXAMPLES}
A typical example:
\verbatim{
$ cd /etc
$ casparize /etc/postfix/main.cf}
creates the directory /etc/postfix, creates /etc/postfix/Makefile
including the proper content, and copies /etc/postfix/main.cf into
/etc/postfix/main.cf. You can now directly add and commit the new
directory.
\sec{bugs}{BUGS}
Non known at this moment.
\sec{author}{AUTHOR}
Jeroen Hoppenbrouwers
\sec{seealso}{SEE ALSO}
\sibref{caspar}{caspar(7)}
The caspar homepage is at \httpref{http://mdcc.cx/caspar/} .
\end{pud::man}
caspar-20170830/doc/csp_helper.azm 0000644 0001751 0001751 00000007444 13151515253 013570 0000000 0000000 \: vim:syntax=tex
\: This file is maintained at http://git.mdcc.cx/caspar
\: this is a manpage in zoem format. see http://micans.org/zoem/ and man_zmm(7)
\import{pud/man.zmm}
\import{./include.zmm}
\begin{pud::man}{
{name}{csp_helper}
{html_title}{csp_helper}
{section}{1}
\man_share
}
\${html}{\"pud::man::maketoc"}
\def{caspar}{\bf{caspar}}
\def{csp_install}{\bf{csp_install}}
\def{csp_mkdircp}{\bf{csp_mkdircp}}
\def{csp_scp_keep_mode}{\bf{csp_scp_keep_mode}}
\def{csp_sucp}{\bf{csp_sucp}}
\sec{name}{NAME}
\NAME{csp_helper}{A collection of caspar helper scripts}
\sec{synopsis}{SYNOPSIS}
\csp_install \synreqopt{dir}{directory} \synreqopt{file}{file}
\par{
\csp_mkdircp \synreqopt{dir}{directory} \synreqopt{file}{file}
} \par{
\csp_scp_keep_mode \synreqopt{h}{[user@]host} \synreqopt{dir}{directory} \synreqopt{file}{file}
} \par{
\csp_sucp
\synreqopt{h}{[user@]host}
\synreqopt{dir}{directory}
\synreqopt{file}{file}
}
\sec{description}{DESCRIPTION}
The scripts \csp_install, \csp_mkdircp, \csp_scp_keep_mode and \csp_sucp are helpers for
\sibref{caspar}{caspar(7)}. These scripts typically are not invoked directly,
but via a Makefile which uses \caspar. See the notes on csp_PUSH in
\sibref{caspar}{caspar(7)} for information on how to link \csp_install,
\csp_scp_keep_mode and \csp_sucp to \caspar.
\sec{install_description}{install DESCRIPTION}
\csp_install creates the required directory (if needed) and installs the file,
preserving timestamps. It uses install(1).
\sec{install_examples}{install EXAMPLES}
\verbatim{
csp_INSTALL_OPTIONS='--owner=www-data --group=www-data' \\
csp_INSTALL_MODE=ugo=r \\
csp_install /srv/www index.html}
\verbatim{
csp_INSTALL_MODE=u=rwx,go= csp_install /usr/local/sbin mkpasswd}
\sec{install_environment}{install ENVIRONMENT}
\csp_install honors csp_INSTALL_OPTIONS and csp_INSTALL_MODE (default is
u=rw,go=r).
\sec{mkdircp_description}{mkdircp DESCRIPTION}
\csp_mkdircp calls mkdir(1) and cp(1).
\csp_mkdircp is used like csp_CP. use \csp_mkdircp if you frequently have to
bootstrap installation on a fresh system, on which needed directories don't
exist yet. \csp_mkdircp makes sure the target directory exists before calling
cp(1), by calling mkdir -p first.
\sec{scp_keep_mode_description}{scp_keep_mode DESCRIPTION}
\csp_scp_keep_mode uses ssh to copy a file to a remote host, keeping its file
permission mode. The trick used is a combination of mktemp(1) and mv(1).
Useful if you'd like to be sure a file gets installed e.g. group writable,
without fiddling with permission bits on the remote host.
\sec{scp_keep_mode_examples}{scp_keep_mode EXAMPLE}
\verbatim{
chmod g+w rc
csp_scp_keep_mode root@gandalf /etc/uruk rc}
\sec{scp_keep_mode_environment}{scp_keep_mode ENVIRONMENT}
\csp_scp_keep_mode honors csp_SSH ("ssh" by default).
\sec{sucp_description}{sucp DESCRIPTION}
\csp_sucp calls tar(1) from within sudo(1) from within ssh(1). This allows one
to copy files to accounts on hosts one can only reach by calling sudo on the
ssh-reachable remote host.
\par{
Typically, one wants to install a root-owned file, but one does not want to
allow access to the root-account directly from ssh. Typically sudo is used as
an extra line of defense.
}
\par{NB: if your sudo prompts for a password, be sure to have line
\verbatim{
Defaults !tty_tickets}
in your sudoers file: we first call sudo -v, than we call sudo to write the
data. Since we use ssh to get to the host, we'll use a different tty for both
sudo calls.
}
\sec{sucp_examples}{sucp EXAMPLES}
Some examples:
\verbatim{
csp_sucp rms@bilbo /etc fstab}
\verbatim{
csp_sucp monty-python commit/ trailer.txt}
\sec{author}{AUTHOR}
\"man::author"
\sec{seealso}{SEE ALSO}
\sibref{caspar}{caspar(7)}
The caspar homepage is at \httpref{http://mdcc.cx/caspar/} .
\end{pud::man}
caspar-20170830/doc/caspar.azm 0000644 0001751 0001751 00000053751 13151515253 012717 0000000 0000000 \: vim:syntax=tex
\: This file is maintained at http://git.mdcc.cx/caspar
\: this is a manpage in zoem format. see http://micans.org/zoem/ and man_zmm(7)
\import{pud/man.zmm}
\import{./include.zmm}
\begin{pud::man}{
{name}{caspar}
{html_title}{caspar}
{section}{7}
\man_share
}
\${html}{\"pud::man::maketoc"}
\def{"docbook.mk"}{\it{docbook.mk}}
\def{"pod.mk"}{\it{pod.mk}}
\def{"caspar.mk"}{\it{caspar.mk}}
\def{caspar}{\bf{caspar}}
\def{"install.mk"}{\it{install.mk}}
\sec{name}{NAME}
caspar - Makefile snippets for common tasks
\sec{synopsis}{SYNOPSIS}
In a Makefile, write either
\verbatim{
include caspar/mk/caspar.mk
}
or
\verbatim{
include caspar/mk/docbook.mk
}
or
\verbatim{
include caspar/mk/pod.mk
}
.
\sec{description}{DESCRIPTION}
Caspar offers Makefile snippets for common tasks, like installing
(configuration) files, or typesetting LaTeX, DocBook XML and DocBook SGML
documents.
\par{
The typesetting functionality is delivered by \"docbook.mk" and \"pod.mk".
This is documented in \sibref{caspar-typesetting}{caspar-typesetting(7)}.
} \par{
The installing-stuff functionality is delivered by \"caspar.mk".
(That's what the rest of the manual will talk about.) It enables one to run
'make install' from within a tree which typically holds configuration files,
managed using Subversion (or git or any other version control system, for that
matter).
} \par{
It is useful in cases like this: all configuration files of some host are under
version control, and, after commiting a change to CVS, you want to be able to
easily install the new configuration file on the host.
} \par{
With \caspar, all you have to do is specify the hostname in one place, and
specify the name of the target directory in each CVS directory.
} \par{
It is comparable with other tools for Unix system administrators like
puppet and cfengine. Main difference: the caspar code consists of less than
100 lines of GNU Make.
}
\sec{usage}{USAGE}
Within a CVS tree, create a file \it{include/install.mk}, with contents like
e.g.
\verbatim{
csp_UHOST = root@some.host.somewhere
include caspar/mk/caspar.mk
}
. Within each other directory of the CVS tree which holds files, create a
Makefile, which looks like e.g.
\verbatim{
csp_DIR = /some/dir/ectory/
include ../../include/install.mk
}
.
If you'd like to use the \it{install-recursive} target too, in directories
which hold subdirectories (but not files), you'll have to create a Makefile
which looks something like
\verbatim{
include ../../include/install.mk
}
. From within the CVS tree, one can call:
\verbatim{
make -diff
make -install
make diff
make install
make load
make
make install-recursive
}
Calling \tt{make -diff} shows the diff between the local file
and the file as currently installed on the remote location.
Calling \tt{make install} (or \tt{make}) now will scp all files in the current
directory to the remote location. The \it{install-recursive} target descends
down the tree, and calls \tt{make install} in each subdirectory.
\par{
Of course, you'll have to be able to ssh directly as root to the remote host to
get this working (if you'd like to use \tt{csp_UHOST =
root@some.host.somewhere}). If you don't like this, and would like to have a
\tt{PermitRootLogin no} in your \tt{/etc/ssh/sshd_config}, you can use
csp_sucp(1). See below.
}
\sec{variables}{VARIABLES}
\par{
The variables one can set in a calling Makefile are:
\begin{itemize}{
{contiguous}{1}
{w1}{7}
}
\item{\tt{csp_UHOST}} user@host, reachable using \tt{$(csp_PUSH)} (which
is scp by default)
\item{\tt{csp_UHOSTS}} space separated list of user@host items, reachable
using \tt{$(csp_PUSH)}
\item{\tt{csp_DIR}} directory on host, reachable using function
\tt{$(csp_PUSH)}
\item{\tt{csp_PUSH}} make function for pushing files to remote location.
Usually, this is a wrapper around a script or
program. The function will be passed 4 arguments:
\it{[user@]host}, remote \it{directory} and local
\it{filename}.
\it{[user@]host} will be set
to all elements of \tt{$(csp_UHOSTS)};
\it{directory} will be set to \tt{$(csp_DIR)}.
Currently, \tt{$(csp_scp_FUNC)}, \tt{$(csp_cp_FUNC)}
and \tt{$(csp_sucp_FUNC)} are supported as push
plugins. If \tt{csp_PUSH} is unset, the default
\tt{$(csp_scp_FUNC)} is used.
\item{\tt{csp_LOAD}} the `load' target depends upon these targets.
\item{\tt{csp_BUILD}} the `build' target depends upon these targets.
\item{\tt{csp_CP}} cp binary, just "cp" by default
\item{\tt{csp_SCP}} scp binary, just "scp" by default
\item{\tt{csp_SUCP}} script wrapping sudo in ssh, "csp_sucp" by default
\item{\tt{csp_EXTRAFILES}} extra files which should be installed.
Can be used to include files starting with a dot.
\item{\tt{csp_TABOOFILES}} files which should never be installed. Set to
\tt{Makefile .%.swp %~ #%# pod2htmd.tmp pod2htmi.tmp} by default.
\item{\tt{csp_TABOOFILES_ADD}} extra files which should never be installed;
added to list in \tt{csp_TABOOFILES}.
\item{\tt{csp_TABOOFILES_SKIP}} files which should be installed, even if
in initial \tt{csp_TABOOFILES} list. Removed from \tt{csp_TABOOFILES}
list.
\item{\tt{csp_TABOODIRS}} directories to exclude in install-recursive target.
set to \tt{CVS .svn} by default.
\item{\tt{csp_TABOODIRS_ADD}, \tt{csp_TABOODIRS_SKIP}} see
\tt{csp_TABOOFILES} equivalents.
\item{\tt{csp_UHOSTS_SUBSET}} override csp_UHOSTS: don't push to csp_UHOSTS, but
to the intersection of this space separated list of user@host items and
csp_UHOSTS.
\end{itemize}
}
\par{
The following variables might get phased out or removed soonish:
\begin{itemize}{
{contiguous}{1}
{w1}{7}
}
\item{\tt{csp_CPFLAGS}} extra arguments to pass to cp invocation, none by
default
\item{\tt{csp_SCPFLAGS}} extra arguments to pass to scp invocation, e.g.
'\tt{-i .ssh/id_rsa-root}'
\end{itemize}
}
\sec{examples}{EXAMPLES}
\par{
Some examples:
}
\cpar{Using csp_UHOST}{
This is the simplest way to use caspar. \it{Makefile} is
\verbatim{
csp_UHOST = root@some.host.somewhere
csp_DIR = /etc/
include caspar/mk/caspar.mk
}
Now, running "make" will scp all files in the current directory to
\tt{root@some.host.somewhere:/etc/}.
}
\cpar{More hosts, not scp but sudo via ssh: using csp_PUSH}{
\it{Makefile} is
\verbatim{
csp_UHOSTS = root@some.host.somewhere root@some.other.host
csp_PUSH = $(csp_sucp_FUNC)
csp_DIR = /etc/
include caspar/mk/caspar.mk
}
Now, running "make" will use csp_sucp(1) to install all files in the current
directory to both root@some.host.somewhere:/etc/ and
root@some.other.host:/etc/. If a file named \tt{fstab} is present in the
current directory, running "make fstab-install" will just install that one
file.
If you need to sudo(1) to another user on the remote host, add something like
\verbatim{
csp_XARG = postgres
}
. (If such a username is not supplied, sudo (and csp_sucp) use the default:
root.)
}
\cpar{Overriding csp_UHOSTS: csp_UHOSTS_SKIP}{
If one or some of your hosts are temporarily unavailable, and you'd like to
push your files to the hosts which are alive, you can temporarily override your
csp_UHOSTS. E.g., when some.other.host is not available:
\verbatim{
% cat Makefile
csp_UHOSTS = root@some.host.somewhere root@some.other.host
csp_DIR = /etc/
include caspar/mk/caspar.mk
% make install csp_UHOSTS_SKIP=root@some.other.host
scp hosts root@some.host.somewhere:/etc/
scp fstab root@some.host.somewhere:/etc/
}
}
\cpar{Overriding csp_UHOSTS in a smart way: csp_UHOSTS_SUBSET. Using multiple
groups of hosts. Recursive make made easy.}{
If you have lots of subdirectories holding information for lots of groups of
hosts, while this run you just want to install for a small group (or 1) hosts,
csp_UHOSTS_SUBSET is useful.
Suppose your casparized tree looks like
\verbatim{
Makefile
apache/include/install.mk
apache/etc/apache2/Makefile
apache/etc/apache2/envvars
php/include/install.mk
php/etc/php4/apache/Makefile
php/etc/php4/apache/php.ini
grub/include/install.mk
grub/boot/grub/Makefile
grub/boot/grub/menu.lst
logrotate/include/install.mk
logrotate/etc/Makefile
logrotate/etc/logrotate.conf
nrpe/include/install.mk
nrpe/debian/etc/default/Makefile
nrpe/debian/etc/default/nagios-nrpe-server
}
The file \it{apache/etc/apache2/Makefile} is:
\verbatim{
csp_DIR = /etc/apache2/
include ../../include/install.mk
}
(all other \it{Makefile}s are similar).
The file \it{apache/include/install.mk} is
\verbatim{
csp_UHOSTS = root@a root@b
include caspar/mk/caspar.mk
}
The file \it{php/include/install.mk} is the same. The files
\it{grub/include/install.mk} and \it{logrotate/include/install.mk} are
\verbatim{
csp_UHOSTS = root@d root@e root@f root@g
include caspar/mk/caspar.mk
}
The file \it{nrpe/include/install.mk} is
\verbatim{
csp_UHOSTS = root@d root@e root@f root@n
include caspar/mk/caspar.mk
}
The toplevel \it{Makefile} is
\verbatim{
dirs = $(patsubst %/Makefile,%,$(shell find * -mindepth 1
-name Makefile))
all:
for i in $(dirs); do $(MAKE) -$(MAKEFLAGS) -C $$i; done
install
for i in $(dirs); do $(MAKE) -$(MAKEFLAGS) -C $$i install; done
load
for i in $(dirs); do $(MAKE) -$(MAKEFLAGS) -C $$i load; done
}
(we don't feel like sticking a \it{Makefile} in all non-leaf nodes of our tree).
} \par{
Now, when running "\tt{csp_UHOSTS_SUBSET='root@e root@f root@m root@n' make}"
in the toplevel, caspar just takes the intersection of csp_UHOSTS_SUBSET and
csp_UHOSTS for each csp_UHOSTS list. So, caspar will not push anything for
\it{apache/} and \it{php/}. The files \it{grub/boot/grub/menu.lst} and
\it{logrotate/etc/logrotate.conf} will get pushed to \tt{root@e} and
\tt{root@f} only. The file \it{nrpe/debian/etc/default/nagios-nrpe-server}
will get pushed to \tt{root@e}, \tt{root@f} and \tt{root@n}.
} \par{
This is often better than just overriding csp_UHOSTS on the commandline (or in
your shell's environment): if the intersection of the original csp_UHOSTS and
your new csp_UHOSTS is empty, chances are big you've just forgotten to clean
your environment.
}
\cpar{Creating remote directories if needed}{
\it{Makefile} is
\verbatim{
csp_DIR = /some/dir/ectory/
csp_PUSH = $(csp_scpmkdir_FUNC)
csp_UHOST = root@some.host.somewhere
include caspar/mk/caspar.mk
}
Now, before calling scp, caspar will run 'mkdir -p' to create any missing
remote directories.
}
\cpar{Using csp_CP and csp_LOAD}{
\it{username/etc/Makefile} is
\verbatim{
csp_UHOST = dummy
csp_PUSH = $(csp_cp_FUNC)
csp_DIR = $(HOME)/etc/
csp_LOAD = crontab-load
include ../include/install.mk
crontab-load = crontab $(csp_DIR)/crontab
}
while \it{../include/install.mk} is just
\verbatim{
include caspar/mk/caspar.mk
}
.
Setting \tt{csp_PUSH} to \tt{$(csp_cp_FUNC)} causes cp(1) to get executed
by "make install" (not scp(1)).
Setting \tt{csp_LOAD} causes "make load" to execute the crontab command. Just
running "make" is OK too, since "make" calls both "make install" and "make
load".
}
\cpar{Using csp_DIR, csp_LOAD and install(1)}{
To install a file on the local host, create e.g. a file \it{etc/uruk/Makefile}
like:
\verbatim{
csp_UHOST = dummy
csp_DIR = /etc/uruk/
csp_PUSH = $(csp_install_FUNC)
csp_LOAD = uruk-load
include caspar/mk/caspar.mk
uruk-load = sudo invoke-rc.d uruk force-reload
}
}
\cpar{Using csp_DIR and csp_LOAD, take 2}{
\it{etc/Makefile} is
\verbatim{
csp_DIR = /etc/
csp_LOAD = aliases-load
include ../include/install.mk
aliases-load = $(csp_SSH) $1 "cd /etc && postalias aliases; postfix reload"
}
while \it{../include/install.mk} is
\verbatim{
csp_UHOST = root@some.host.somewhere
include caspar/mk/caspar.mk
}
}
\cpar{Building files locally}{
Note: csp_BUILD is deprecated. You should not use it.
If you'd like to build some files locally from local sources, before installing
the just built files, do e.g.:
\verbatim{
csp_UHOST = root@some.host.somewhere
csp_DIR = /etc/
csp_EXTRAFILES = sshd_config
csp_TABOOFILES_ADD = sshd_config.m4
include caspar/mk/caspar.mk
sshd_config: sshd_config.m4
m4 $< > $@
}
List all source files in csp_TABOOFILES_ADD: this way, they won't get installed
on the csp_UHOST.
}
\cpar{Using csp_sucp_FUNC and csp_LOAD}{
If you'd like to use csp_sucp and want a `load' target, do something like:
\verbatim{
csp_PUSH = $(csp_sucp_FUNC)
csp_UHOST = foobar.example.com
csp_DIR = /etc/uruk/
csp_LOAD = rc-load
include caspar/mk/caspar.mk
rc-load = $(csp_SSH) $1 sudo invoke-rc.d uruk force-reload
}
}
\cpar{Using the "verify" target}{
If you want to do some syntax check on the local host for a configuration
file, define a -verify target (or pattern target):
\verbatim{
bar.pem-verify: bar.pem.asc bar.pem
gpg --verify $^
%.php-verify: %.php
php -l $<
}
This command will be invoked when you "make verify" and "make install".
\cpar{Using the "check" target}{
If you want to do some syntax check on the remote host, before loading the just
installed configuration file, do
\verbatim{
csp_UHOST = foobar.example.com
csp_DIR = /etc/
csp_LOAD = my-load
csp_CHECK = my-check
my-check = $(csp_SSH) $1 do-check-stuff
my-load = $(csp_SSH) $1 do-load-stuff
include caspar/mk/caspar.mk
}
This way, "make load" won't cause the file to load if the check fails
(which is probably what you want).
You could even give the file a temporary name and have the load target
rename it to its real name only after a successful check.
As a convenience, if a foo-check variable is defined, it is automatically
added as a dependency for any csp_LOAD targets named foo or foo-something.
}
\cpar{Combining the csp_LOAD target with multiple hosts; building files remotely}{
Here's an example doing some preprocessing on the remote hosts before reloading the configuration:
\verbatim{
csp_DIR = /etc/ssh/
csp_UHOSTS = root@some.host.somewhere root@some.other.host
csp_LOAD = sshd_config-load
sshd_config-load = $(csp_SSH) $1 "set -e; \\
cd $(csp_DIR); \\
m4 sshd_config.m4 >sshd_config; \\
service ssh reload"
include caspar/mk/caspar.mk
}
(The old, deprecated way is to explicitly specify the loop over the hosts:
\verbatim{
csp_DIR = /etc/ssh/
sshd_config-load:
for suh in $(csp_UHOSTS); do \\
$(csp_SSH) $$suh "set -e;
cd $(csp_DIR); \\
m4 sshd_config.m4 > sshd_config; \\
service ssh reload"; \\
done
}
.
You should not use this method.
Please consider rewriting any existing caspar snippets using the simpler method described above.)
}
\cpar{Using the csp_TABOOFILES_{ADD,SKIP} variables; another way to perform remote builds}{
Using the csp_TABOOFILES_{ADD,SKIP} variables is handy if you want to
\it{install} a \it{Makefile}, instead of using it: Create \it{Makefile} just
as you'd like to have it installed on the remote location. Now, create
\it{GNUmakefile} as e.g.
\verbatim{
csp_TABOOFILES_SKIP = Makefile
csp_TABOOFILES_ADD = GNUmakefile
csp_DIR = /etc/foobar/
csp_UHOST = root@some.host.somewhere
include caspar/mk/caspar.mk
load:
$(csp_SSH) $(csp_UHOST) "make -C $(csp_DIR)"
}
Now, \tt{make install} and \tt{make load} will do the right thing.
}
\cpar{Using the csp_EXTRAFILES variable}{
Using the csp_EXTRAFILES variable can be handy if you want to install files
with a leading dot. E.g.:
\verbatim{
csp_EXTRAFILES = .bashrc
csp_UHOST = root@some.host.somewhere
csp_DIR =
include caspar/mk/caspar.mk
}
}
\cpar{Overriding csp_UHOSTS}{
Supply e.g.
\verbatim{
csp_UHOSTS = root@localhost root@some.host.somewhere
}
in \it{install.mk}, to install on multiple hosts. Run
\verbatim{
make filename-install csp_UHOSTS=joe@otherhost
}
to install filename as \tt{joe@otherhost}, instead of the default as given in
\it{install.mk}. If you want to enable passing csp_UHOSTS as a shell
environment variable, you'll have to use conditional assignment in your
Makefile:
\verbatim{
csp_UHOSTS ?= root@localhost root@some.host.somewhere
}
This allows it to run
\verbatim{
% export csp_UHOSTS=foo@bar
% make filename-install
}
to install on \tt{foo@bar}.
}
\cpar{Using sudo locally for installing files}{
If you'd like to install files like
\verbatim{
sudo cp foo.rc /etc/foobar/
}
you could set up your \it{Makefile} as
\verbatim{
csp_DIR = /etc/foobar/
csp_UHOST = dummy
csp_PUSH = sudo cp $(1) $(3)
include caspar/mk/caspar.mk
}
This is like csp_sucp, but without the ssh wrapping: it works on localhost
only.
}
\cpar{Plugging your own install script in caspar}{
If your script \tt{foobar} should be called as e.g.
\verbatim{
foobar --file=fstab --user@host=joe@some.host \\
--dir=/etc/ --debuglevel=3
}
then make sure your \it{Makefile} features something like
\verbatim{
csp_foobar_FUNC = foobar --file=$(1) --user@host=$(2) \\
--dir=$(3) --debuglevel=$(4)
csp_PUSH = $(csp_foobar_FUNC)
csp_XARG = 3
}
You can now use \tt{csp_UHOST} and \tt{csp_DIR} just as you're used to.
}
\cpar{More advanced tricks}{
When you don't want to ssh to \tt{root@some.host.somewhere} directly, you could
do
\verbatim{
sudo rsync -az /path/to/your/config_archive /etc
}
on some.host.somewhere (e.g. from cron).
}
\sec{files}{FILES}
\it{caspar/mk/caspar.mk}, \it{caspar/mk/docbook.mk}, \it{caspar/mk/pod.mk}
\sec{environment}{ENVIRONMENT}
For \"caspar.mk": \tt{csp_CP}, \tt{csp_LOAD},
\tt{csp_SCP}, \tt{csp_UHOST}, \tt{csp_PUSH}, ...
\sec{bugs}{BUGS}
Very likely, GNU Make is not the best tool for doing the stuff \"caspar.mk" is
doing.
For the list of reported bugs, see \httpref{http://bugs.debian.org/src:caspar}.
See also TODO, distributed with the caspar package. (And online at
\httpref{http://mdcc.cx/pub/caspar/caspar-latest/TODO}.)
\sec{trivia}{TRIVIA}
Caspar is named after Caspar the Friendly Ghost, since that's the title
of the Daniel Johnston song I was listening to when deciding to package
my homegrown scripts.
\sec{author}{AUTHOR}
\"man::author"
\sec{seealso}{SEE ALSO}
\sibref{caspar-typesetting}{caspar-typesetting(7)}
\sibref{csp_helper}{csp_helper(1)}
\par{
The caspar homepage is at \httpref{http://mdcc.cx/caspar/} .
} \par{
The document
\aref{http://non-gnu.uvt.nl/pub/uvt-unix-doc/packaging/}{"Versiebeheer en
software-packages: Waarom en Hoe"} (in Dutch) describes some of the reasons why
people might want to use tools like caspar.
} \par{
Jeroen Hoppenbrouwers blogs about the way he uses caspar, in
\aref{http://www.hoppie.nl/pub/node/79}{"Using Subversion and Caspar to
maintain a Linux host"}.
} \par{
Lots of tools overlap (partly) with caspar in their functionality. Here's a
list.
} \par{
ansible (\httpref{http://www.ansible.com/}); code is on github
(\httpref{https://github.com/ansible/ansible})
} \par{
cfengine (\httpref{http://www.cfengine.org/}), by Mark Burgess e.a., builds
expert systems to administrate and configure large computer networks: it
delivers a very big superset of caspar's installation mechanism.
} \par{
Puppet (\httpref{http://reductivelabs.com/projects/puppet}), also something
like a configuration management system.
} \par{
Here's an older list; a big part of it was collected by Ray Miller
(\httpref{http://users.ox.ac.uk/~raym/}) of Oxford University, and published in
the article "Configuration Management with Subversion, YAML and Perl Template
Toolkit" in the SANE 2006 (\httpref{http://www.sane.nl/sane2006/}) conference
proceedings. FIXME: Check urls, update
} \par{
\: The `cvs-conf' package (\httpref{http://project.tuxfamily.org/cvs-conf},
\: \httpref{http://packages.debian.org/stable/utils/cvs-conf.html}) probably
\: offers about the same functionality as \"caspar.mk". However, this package
\: seems largely unmaintained (between September 2002 and May 2004, at
\: least).
docbookmk, by Michael Wiedmann (\httpref{http://www.miwie.org/docbkmake/})
offers probably a superset of Caspar's \"docbook.mk" functionality.
} \par{
latex-make by the LaTeX Utils project on
\httpref{http://gforge.inria.fr/projects/latex-utils/} seems to provide similar
functionality as \"docbook.mk" for LaTeX documents.
} \par{
Latexmk by John Collins e.a. on
\httpref{http://www.phys.psu.edu/~collins/software/latexmk-jcc/} is another
implementation of this idea.
} \par{
SUP, the Software Upgrade Protocol and it's implementation by Carnegie Mellon
University offers another way to distribute (configuration)files. Beware
though: between Nov 1996 and June 2004, no new release has been published. The
Debian (\httpref{ftp://ftp.debian.org/debian/pool/main/s/sup/}) and NetBSD
packages are likely still maintained, though.
} \par{
PIKT (\httpref{http://www.pikt.org/}) is intended primarily for system
monitoring, but does do configuration management too.
} \par{
LCFG (\httpref{http://www.lcfg.org/}) is another configuration management
system.
} \par{
The Arusha Project (ARK, at \httpref{http://ark.sf.net/}) provides a framework
for collaborative system administration.
} \par{
Bcfg2 (\httpref{http://trac.mcs.anl.gov/projects/bcfg2/}) is yet another
configuration management system.
} \par{
quattor (\httpref{http://quattor.web.cern.ch/}) is a system administration
toolkit for installation, configuration and management of Unix systems.
} \par{
rb3 and friends, as written and used by Ray Miller e.a. at Oxford University,
(\httpref{http://users.ox.ac.uk/~raym/software/configuration-management/}).
} \par{
The \aref{http://svk.elixus.org/}{svk} version control system is said to be
quite usable for handling configuration file management (without a separate
install mechanism like caspar). See also
\aref{http://lists.debian.org/debian-devel/2005/02/thrd2.html#00495}{this
discussion on the Debian development list}.
} \par{
On the \httpref{http://www.infrastructures.org/} website on automated (Unix)
system administration, you can find some thoughts on managing configuration
files using a version control system.
}
\end{pud::man}
caspar-20170830/doc/caspar-typesetting.azm 0000644 0001751 0001751 00000006542 13151515253 015270 0000000 0000000 \: vim:syntax=tex
\: This file is maintained at http://git.mdcc.cx/caspar
\: this is a manpage in zoem format. see http://micans.org/zoem/ and man_zmm(7)
\import{pud/man.zmm}
\import{./include.zmm}
\begin{pud::man}{
{name}{caspar-typesetting}
{html_title}{caspar-typesetting}
{section}{7}
\man_share
}
\${html}{\"pud::man::maketoc"}
\def{"docbook.mk"}{\it{docbook.mk}}
\def{"pod.mk"}{\it{pod.mk}}
\sec{name}{NAME}
caspar-typesetting - Makefile snippets for common typesetting tasks
\sec{synopsis}{SYNOPSIS}
In a Makefile, write
\verbatim{
include caspar/mk/docbook.mk
}
or
\verbatim{
include caspar/mk/pod.mk
}
.
\sec{description}{DESCRIPTION}
The caspar \"docbook.mk" and \"pod.mk" files are Makefile snippets for common
typesetting tasks, like typesetting LaTeX (see \refer{latex}), DocBook
XML, DocBook SGML (see \refer{dbx}) and POD (see \refer{pod}) documents.
You just have to type \tt{make}, instead of stuff like \tt{jade -t tex -d
caspar/print.dsl /usr/share/sgml/declaration/xml.dcl foobar.dbx}.
\sec{usage}{USAGE}
In a directory where you maintain .dbx (Docbook XML) or .tex (LaTeX) files, do
\verbatim{
$ echo include caspar/mk/docbook.mk > Makefile
$ vi karenina.dbx
$ make karenina.view
$ make karenina.print
$ vi svejk.tex
$ make svejk.view
$ make svejk.print
$ make
$ make clean
}
Other targets: \tt{filename.ps}, \tt{filename.pdf}, \tt{filename.2ps}, \tt{filename.html},
\tt{filename.printbig}, \tt{filename.dvi}.
\par{
Variables you might like to set in your Makefile: \tt{XMLDCL} (default is
\tt{/usr/share/sgml/declaration/xml.dcl}; if you're not on a Debian GNU/Linux
system, you'll likely have to adjust this), \tt{HTML_DSL}, \tt{PRINT_DSL}.
} \par{
In a directory where you maintain .pod files, do
\verbatim{
$ echo include caspar/mk/pod.mk > Makefile
$ vi lire.pod
$ perldoc ./lire.pod
$ make lire.pdf
$ make
$ less lire.overstrike-txt
$ make clean
}
Other targets: \tt{filename.ps}, \tt{filename.html}, \tt{filename.txt}, ...
(Similar to the ones supplied by \"docbook.mk").
}
\sec{examples}{EXAMPLES}
\par{
Some examples: Overriding the caspar-supplied DSSSL files: Create your own
print.dls and html.dsl, in the same directory as your Docbook XML files. Your
Makefile should read:
\verbatim{
PRINT_DSL = print.dsl
HTML_DSL = html.dsl
include caspar/mk/docbook.mk
}
Overriding the standard html-to-text convertor:
\verbatim{
$ W3M=lynx make svejk.txt
}
.
}
\sec{files}{FILES}
\it{caspar/mk/docbook.mk}, \it{caspar/mk/pod.mk}
\sec{environment}{ENVIRONMENT}
For \"docbook.mk": files: \tt{XMLDCL}, \tt{HTML_DSL}, \tt{PRINT_DSL};
utilities: \tt{JADE}, \tt{PDFJADETEX}, \tt{PDFLATEX}, \tt{JADETEX}, \tt{LATEX},
\tt{W3M}, \tt{DVIPS}, \tt{PSNUP}, \tt{LPR}, \tt{GV}; settings:
\tt{JADE_MAXERRORS}. These variables can get adjusted in Makefile, as well as
in the shell environment.
\par{
\"pod.mk" Uses no environment variables.
}
\sec{author}{AUTHOR}
\"man::author"
\sec{seealso}{SEE ALSO}
\sibref{caspar}{caspar(7)}
\reference{pod}
perlpod(1) about Perl's Plain Old Documentation format
\par{
\reference{dbx}
\it{DocBook: The Definitive Guide} on \httpref{http://docbook.org/},
} \par{
\reference{latex}
The LaTeX Project Homepage on \httpref{http://www.latex-project.org/}.
} \par{
Some comments on advanced usage are in the files \"docbook.mk" and \"pod.mk"
itself.
}
\end{pud::man}
caspar-20170830/doc/ChangeLog.2002 0000644 0001751 0001751 00000010044 13151515253 013055 0000000 0000000 caspar (20030803)
* mk/Makefile.am, sgml/Makefile.am: bugfix. new build system needs new
PACKAGE variable. stuff got installed in /usr/share/mk/ (not
/usr/share/caspar/mk/)
-- Joost van Baal Sun, 03 Aug 2003 00:06:34 +0200
caspar (20030802)
* more bugfixes: generating pdf from LaTeX was broken since caspar 20030716.
* mk/docbook.mk: now uses pdflatex for generating PDF directly from LaTeX
(without intermediate PostScript). calls latex 3 times: make sure tocs
get created. no longer uses ps2pdf.
* mk/caspar.mk: get rid of non-portable 'echo -n': this made caspar fail
on Solaris. Tnx Piet Lauwen for bugreport and suggestion for fix.
* Makefile.am, bootstrap, setversion, configure.ac/configure.in:
moved to autoconf 2.53 style, renamed configure.in to configure.ac: new
autotools naming convention. (Now uses same build system as AD1810
Firewall ( http://mdcc.cx/ad1810-firewall/ ).
-- Joost van Baal Sat, 02 Aug 2003 23:26:06 +0200
caspar (20030718)
* bugfix release
* mk/docbook.mk: run pdfjadetex 3 times: fixes toc. rm -f intermediate
files: no sure wether they will get created. added license referal
-- Joost van Baal Fri, 18 Jul 2003 11:12:43 +0200
caspar (20030716)
* TODO: I'd like a TOC in HTML output from DocBook. (Even while we're doing
nochunks mode)
* README: added link to http://www.miwie.org/docbkmake/ , which seems
similar to docbook.mk in it's goals
* mk/docbook.mk: use pdfjadetex for generating pdf: fonts look better
-- Joost van Baal Wed, 16 Jul 2003 21:03:17 +0200
caspar (20030331)
* mk/caspar.mk: ommitting SDIR results in scp to get skipped
* mk/caspar.mk: added SUHS hack: now possible to install on multiple hosts.
* mk/docbook.mk: sane default target added.
* mk/Makefile.am: some fiddling to get make distcheck working with
automake 1.7
* README: documented new tricks.
-- Joost van Baal Mon, 31 Mar 2003 22:04:18 +0200
caspar (20030203)
* TODO: Found bug in caspar.mk.
* README: Added note about cvs-conf. Added pointer to Debian package.
Added note about usage with rsync.
* mk/pod.mk: Added: support for typesetting Perl's Plain Old Documentation.
-- Joost van Baal Mon, 03 Feb 2003 16:23:09 +0100
caspar (20020331)
* mk/docbook.mk: jade will quit after max 10 errors, not 200: we will be
able to see the very first error without having to scroll back. Added
support for DocBook SGML sourcefiles. Added some more comments on usage.
* README: updated.
-- Joost van Baal Sun, 31 Mar 2002 12:04:31 +0200
caspar (20020313)
* mk/docbook.mk: clean target more robust: `-rm' instead of `rm'. Now uses
caspar/{html,print}.dsl.
* sgml/{html,print}.dsl: added. Used by mk/docbook.mk.
-- Joost van Baal Wed, 13 Mar 2002 13:09:09 +0100
caspar (20020301)
* README: added requirements section.
* mk/docbook.mk: added: useful for generating PostScript and stuff from LaTeX
or DocBook XML sources.
-- Joost van Baal Fri, 1 Mar 2002 16:18:54 +0100
caspar (20020227)
* README: finally got to document it.
* mk/caspar.mk: renamed `DIR' to `SDIR'; renamed XXTARGETS to LOAD: more
descriptive name.
* mk/caspar.mk: used to be called mk/install.mk.
* mk/caspar.mk: added target `load'. added variable CDIR. got rid of
obsolete comments.
-- Joost van Baal Wed, 27 Feb 2002 18:06:16 +0100
caspar (20020226)
* mk/install.mk: we conditionally set SRDIRS using SUH and DIR: now Makefiles
can use these two vars too.
* mk/install.mk: Now CPDIRS uses -install as targetname, as SRDIRS
already did.
* First tarball build; preliminary release
-- Joost van Baal Tue, 26 Feb 2002 18:36:49 +0100
(First work on caspar's predecessors began in 2000, probably.)
caspar-20170830/doc/csp_install.1 0000644 0001751 0001751 00000000033 13151515253 013313 0000000 0000000 .\"
.so man1/csp_helper.1
caspar-20170830/doc/csp_mkdircp.1 0000644 0001751 0001751 00000000033 13151515253 013276 0000000 0000000 .\"
.so man1/csp_helper.1
caspar-20170830/doc/csp_scp_keep_mode.1 0000644 0001751 0001751 00000000032 13151515253 014441 0000000 0000000 .\"
.so man1/csp_helper.1
caspar-20170830/doc/csp_sucp.1 0000644 0001751 0001751 00000000036 13151515253 012622 0000000 0000000 .\" foo
.so man1/csp_helper.1
caspar-20170830/doc/casparize.1 0000644 0001751 0001751 00000004051 13151515314 012763 0000000 0000000 .\" Copyright (c) 2017 Joost van Baal-Ilić
.TH "casparize" 1 "30 авг 2017" "casparize 20170830" "USER COMMANDS "
.po 2m
.de ZI
.\" Zoem Indent/Itemize macro I.
.br
'in +\\$1
.nr xa 0
.nr xa -\\$1
.nr xb \\$1
.nr xb -\\w'\\$2'
\h'|\\n(xau'\\$2\h'\\n(xbu'\\
..
.de ZJ
.br
.\" Zoem Indent/Itemize macro II.
'in +\\$1
'in +\\$2
.nr xa 0
.nr xa -\\$2
.nr xa -\\w'\\$3'
.nr xb \\$2
\h'|\\n(xau'\\$3\h'\\n(xbu'\\
..
.if n .ll -2m
.am SH
.ie n .in 4m
.el .in 8m
..
.SH NAME
casparize \- Set up \fBcaspar\fP Makefile in a new directory
.SH SYNOPSIS
\fBcasparize\fP
\fBdir\fP (\fI/path/to/config/dir\fP)
\fBcasparize\fP
\fBfile\fP (\fI/path/to/config/dir/file\fP)
.SH DESCRIPTION
\fBcasparize\fP creates a new configuration working directory in your current
working directory, sets up a Makefile for \fBcaspar(7)\fP in
this new directory,
and optionally copies an original configuration file from its original
system place to the newly created configuration working directory\&.
.SH USAGE
You typically use \fBcasparize\fP when you already have created the root
configuration working directory with its include directory and install\&.mk
Caspar include file\&. By analysing your current working directory and the
configuration directory path you give on the command line, casparize can
deduce the contents of the Makefile in the newly created configuration
working directory\&. It creates the new directory, creates the correct
Makefile, and optionally copies the given configuration file in the new
directory, ready for its first version commit\&.
.SH EXAMPLES
A typical example:
.di ZV
.in 0
.nf \fC
$ cd /etc
$ casparize /etc/postfix/main\&.cf
.fi \fR
.in
.di
.ne \n(dnu
.nf \fC
.ZV
.fi \fR
creates the directory /etc/postfix, creates /etc/postfix/Makefile
including the proper content, and copies /etc/postfix/main\&.cf into
/etc/postfix/main\&.cf\&. You can now directly add and commit the new
directory\&.
.SH BUGS
Non known at this moment\&.
.SH AUTHOR
Jeroen Hoppenbrouwers
.SH SEE ALSO
\fBcaspar(7)\fP
The caspar homepage is at http://mdcc\&.cx/caspar/ \&.
caspar-20170830/doc/csp_helper.1 0000644 0001751 0001751 00000007540 13151515315 013135 0000000 0000000 .\" Copyright (c) 2017 Joost van Baal-Ilić
.TH "csp_helper" 1 "30 авг 2017" "csp_helper 20170830" "USER COMMANDS "
.po 2m
.de ZI
.\" Zoem Indent/Itemize macro I.
.br
'in +\\$1
.nr xa 0
.nr xa -\\$1
.nr xb \\$1
.nr xb -\\w'\\$2'
\h'|\\n(xau'\\$2\h'\\n(xbu'\\
..
.de ZJ
.br
.\" Zoem Indent/Itemize macro II.
'in +\\$1
'in +\\$2
.nr xa 0
.nr xa -\\$2
.nr xa -\\w'\\$3'
.nr xb \\$2
\h'|\\n(xau'\\$3\h'\\n(xbu'\\
..
.if n .ll -2m
.am SH
.ie n .in 4m
.el .in 8m
..
.SH NAME
csp_helper \- A collection of caspar helper scripts
.SH SYNOPSIS
\fBcsp_install\fP \fBdir\fP (\fIdirectory\fP) \fBfile\fP (\fIfile\fP)
\fBcsp_mkdircp\fP \fBdir\fP (\fIdirectory\fP) \fBfile\fP (\fIfile\fP)
\fBcsp_scp_keep_mode\fP \fBh\fP (\fI[user@]host\fP) \fBdir\fP (\fIdirectory\fP) \fBfile\fP (\fIfile\fP)
\fBcsp_sucp\fP
\fBh\fP (\fI[user@]host\fP)
\fBdir\fP (\fIdirectory\fP)
\fBfile\fP (\fIfile\fP)
.SH DESCRIPTION
The scripts \fBcsp_install\fP, \fBcsp_mkdircp\fP, \fBcsp_scp_keep_mode\fP and \fBcsp_sucp\fP are helpers for
\fBcaspar(7)\fP\&. These scripts typically are not invoked directly,
but via a Makefile which uses \fBcaspar\fP\&. See the notes on csp_PUSH in
\fBcaspar(7)\fP for information on how to link \fBcsp_install\fP,
\fBcsp_scp_keep_mode\fP and \fBcsp_sucp\fP to \fBcaspar\fP\&.
.SH install DESCRIPTION
\fBcsp_install\fP creates the required directory (if needed) and installs the file,
preserving timestamps\&. It uses install(1)\&.
.SH install EXAMPLES
.di ZV
.in 0
.nf \fC
csp_INSTALL_OPTIONS=\&'--owner=www-data --group=www-data\&' \e
csp_INSTALL_MODE=ugo=r \e
csp_install /srv/www index\&.html
.fi \fR
.in
.di
.ne \n(dnu
.nf \fC
.ZV
.fi \fR
.di ZV
.in 0
.nf \fC
csp_INSTALL_MODE=u=rwx,go= csp_install /usr/local/sbin mkpasswd
.fi \fR
.in
.di
.ne \n(dnu
.nf \fC
.ZV
.fi \fR
.SH install ENVIRONMENT
\fBcsp_install\fP honors csp_INSTALL_OPTIONS and csp_INSTALL_MODE (default is
u=rw,go=r)\&.
.SH mkdircp DESCRIPTION
\fBcsp_mkdircp\fP calls mkdir(1) and cp(1)\&.
\fBcsp_mkdircp\fP is used like csp_CP\&. use \fBcsp_mkdircp\fP if you frequently have to
bootstrap installation on a fresh system, on which needed directories don\&'t
exist yet\&. \fBcsp_mkdircp\fP makes sure the target directory exists before calling
cp(1), by calling mkdir -p first\&.
.SH scp_keep_mode DESCRIPTION
\fBcsp_scp_keep_mode\fP uses ssh to copy a file to a remote host, keeping its file
permission mode\&. The trick used is a combination of mktemp(1) and mv(1)\&.
Useful if you\&'d like to be sure a file gets installed e\&.g\&. group writable,
without fiddling with permission bits on the remote host\&.
.SH scp_keep_mode EXAMPLE
.di ZV
.in 0
.nf \fC
chmod g+w rc
csp_scp_keep_mode root@gandalf /etc/uruk rc
.fi \fR
.in
.di
.ne \n(dnu
.nf \fC
.ZV
.fi \fR
.SH scp_keep_mode ENVIRONMENT
\fBcsp_scp_keep_mode\fP honors csp_SSH ("ssh" by default)\&.
.SH sucp DESCRIPTION
\fBcsp_sucp\fP calls tar(1) from within sudo(1) from within ssh(1)\&. This allows one
to copy files to accounts on hosts one can only reach by calling sudo on the
ssh-reachable remote host\&.
Typically, one wants to install a root-owned file, but one does not want to
allow access to the root-account directly from ssh\&. Typically sudo is used as
an extra line of defense\&.
NB: if your sudo prompts for a password, be sure to have line
.di ZV
.in 0
.nf \fC
Defaults !tty_tickets
.fi \fR
.in
.di
.ne \n(dnu
.nf \fC
.ZV
.fi \fR
in your sudoers file: we first call sudo -v, than we call sudo to write the
data\&. Since we use ssh to get to the host, we\&'ll use a different tty for both
sudo calls\&.
.SH sucp EXAMPLES
Some examples:
.di ZV
.in 0
.nf \fC
csp_sucp rms@bilbo /etc fstab
.fi \fR
.in
.di
.ne \n(dnu
.nf \fC
.ZV
.fi \fR
.di ZV
.in 0
.nf \fC
csp_sucp monty-python commit/ trailer\&.txt
.fi \fR
.in
.di
.ne \n(dnu
.nf \fC
.ZV
.fi \fR
.SH AUTHOR
Joost van Baal-Ilić
.SH SEE ALSO
\fBcaspar(7)\fP
The caspar homepage is at http://mdcc\&.cx/caspar/ \&.
caspar-20170830/doc/caspar.7 0000644 0001751 0001751 00000034123 13151515325 012266 0000000 0000000 .\" Copyright (c) 2017 Joost van Baal-Ilić
.TH "caspar" 7 "30 авг 2017" "caspar 20170830" "MISCELLANEOUS "
.po 2m
.de ZI
.\" Zoem Indent/Itemize macro I.
.br
'in +\\$1
.nr xa 0
.nr xa -\\$1
.nr xb \\$1
.nr xb -\\w'\\$2'
\h'|\\n(xau'\\$2\h'\\n(xbu'\\
..
.de ZJ
.br
.\" Zoem Indent/Itemize macro II.
'in +\\$1
'in +\\$2
.nr xa 0
.nr xa -\\$2
.nr xa -\\w'\\$3'
.nr xb \\$2
\h'|\\n(xau'\\$3\h'\\n(xbu'\\
..
.if n .ll -2m
.am SH
.ie n .in 4m
.el .in 8m
..
.SH NAME
caspar - Makefile snippets for common tasks
.SH SYNOPSIS
In a Makefile, write either
.di ZV
.in 0
.nf \fC
include caspar/mk/caspar\&.mk
.fi \fR
.in
.di
.ne \n(dnu
.nf \fC
.ZV
.fi \fR
or
.di ZV
.in 0
.nf \fC
include caspar/mk/docbook\&.mk
.fi \fR
.in
.di
.ne \n(dnu
.nf \fC
.ZV
.fi \fR
or
.di ZV
.in 0
.nf \fC
include caspar/mk/pod\&.mk
.fi \fR
.in
.di
.ne \n(dnu
.nf \fC
.ZV
.fi \fR
\&.
.SH DESCRIPTION
Caspar offers Makefile snippets for common tasks, like installing
(configuration) files, or typesetting LaTeX, DocBook XML and DocBook SGML
documents\&.
The typesetting functionality is delivered by \fIdocbook\&.mk\fP and \fIpod\&.mk\fP\&.
This is documented in \fBcaspar-typesetting(7)\fP\&.
The installing-stuff functionality is delivered by \fIcaspar\&.mk\fP\&.
(That\&'s what the rest of the manual will talk about\&.) It enables one to run
\&'make install\&' from within a tree which typically holds configuration files,
managed using Subversion (or git or any other version control system, for that
matter)\&.
It is useful in cases like this: all configuration files of some host are under
version control, and, after commiting a change to CVS, you want to be able to
easily install the new configuration file on the host\&.
With \fBcaspar\fP, all you have to do is specify the hostname in one place, and
specify the name of the target directory in each CVS directory\&.
It is comparable with other tools for Unix system administrators like
puppet and cfengine\&. Main difference: the caspar code consists of less than
100 lines of GNU Make\&.
.SH USAGE
Within a CVS tree, create a file \fIinclude/install\&.mk\fP, with contents like
e\&.g\&.
.di ZV
.in 0
.nf \fC
csp_UHOST = root@some\&.host\&.somewhere
include caspar/mk/caspar\&.mk
.fi \fR
.in
.di
.ne \n(dnu
.nf \fC
.ZV
.fi \fR
\&. Within each other directory of the CVS tree which holds files, create a
Makefile, which looks like e\&.g\&.
.di ZV
.in 0
.nf \fC
csp_DIR = /some/dir/ectory/
include \&.\&./\&.\&./include/install\&.mk
.fi \fR
.in
.di
.ne \n(dnu
.nf \fC
.ZV
.fi \fR
\&.
If you\&'d like to use the \fIinstall-recursive\fP target too, in directories
which hold subdirectories (but not files), you\&'ll have to create a Makefile
which looks something like
.di ZV
.in 0
.nf \fC
include \&.\&./\&.\&./include/install\&.mk
.fi \fR
.in
.di
.ne \n(dnu
.nf \fC
.ZV
.fi \fR
\&. From within the CVS tree, one can call:
.di ZV
.in 0
.nf \fC
make -diff
make -install
make diff
make install
make load
make
make install-recursive
.fi \fR
.in
.di
.ne \n(dnu
.nf \fC
.ZV
.fi \fR
Calling \fCmake -diff\fP shows the diff between the local file
and the file as currently installed on the remote location\&.
Calling \fCmake install\fP (or \fCmake\fP) now will scp all files in the current
directory to the remote location\&. The \fIinstall-recursive\fP target descends
down the tree, and calls \fCmake install\fP in each subdirectory\&.
Of course, you\&'ll have to be able to ssh directly as root to the remote host to
get this working (if you\&'d like to use \fCcsp_UHOST =
root@some\&.host\&.somewhere\fP)\&. If you don\&'t like this, and would like to have a
\fCPermitRootLogin no\fP in your \fC/etc/ssh/sshd_config\fP, you can use
csp_sucp(1)\&. See below\&.
.SH VARIABLES
The variables one can set in a calling Makefile are:
.ZI 2m "\fCcsp_UHOST\fP"
\&
.br
user@host, reachable using \fC$(csp_PUSH)\fP (which
is scp by default)
.in -2m
.ZI 2m "\fCcsp_UHOSTS\fP"
\&
.br
space separated list of user@host items, reachable
using \fC$(csp_PUSH)\fP
.in -2m
.ZI 2m "\fCcsp_DIR\fP"
\&
.br
directory on host, reachable using function
\fC$(csp_PUSH)\fP
.in -2m
.ZI 2m "\fCcsp_PUSH\fP"
\&
.br
make function for pushing files to remote location\&.
Usually, this is a wrapper around a script or
program\&. The function will be passed 4 arguments:
\fI[user@]host\fP, remote \fIdirectory\fP and local
\fIfilename\fP\&.
\fI[user@]host\fP will be set
to all elements of \fC$(csp_UHOSTS)\fP;
\fIdirectory\fP will be set to \fC$(csp_DIR)\fP\&.
Currently, \fC$(csp_scp_FUNC)\fP, \fC$(csp_cp_FUNC)\fP
and \fC$(csp_sucp_FUNC)\fP are supported as push
plugins\&. If \fCcsp_PUSH\fP is unset, the default
\fC$(csp_scp_FUNC)\fP is used\&.
.in -2m
.ZI 2m "\fCcsp_LOAD\fP"
\&
.br
the \&`load\&' target depends upon these targets\&.
.in -2m
.ZI 2m "\fCcsp_BUILD\fP"
\&
.br
the \&`build\&' target depends upon these targets\&.
.in -2m
.ZI 2m "\fCcsp_CP\fP"
\&
.br
cp binary, just "cp" by default
.in -2m
.ZI 2m "\fCcsp_SCP\fP"
\&
.br
scp binary, just "scp" by default
.in -2m
.ZI 2m "\fCcsp_SUCP\fP"
\&
.br
script wrapping sudo in ssh, "csp_sucp" by default
.in -2m
.ZI 2m "\fCcsp_EXTRAFILES\fP"
\&
.br
extra files which should be installed\&.
Can be used to include files starting with a dot\&.
.in -2m
.ZI 2m "\fCcsp_TABOOFILES\fP"
\&
.br
files which should never be installed\&. Set to
\fCMakefile \&.%\&.swp %~ #%# pod2htmd\&.tmp pod2htmi\&.tmp\fP by default\&.
.in -2m
.ZI 2m "\fCcsp_TABOOFILES_ADD\fP"
\&
.br
extra files which should never be installed;
added to list in \fCcsp_TABOOFILES\fP\&.
.in -2m
.ZI 2m "\fCcsp_TABOOFILES_SKIP\fP"
\&
.br
files which should be installed, even if
in initial \fCcsp_TABOOFILES\fP list\&. Removed from \fCcsp_TABOOFILES\fP
list\&.
.in -2m
.ZI 2m "\fCcsp_TABOODIRS\fP"
\&
.br
directories to exclude in install-recursive target\&.
set to \fCCVS \&.svn\fP by default\&.
.in -2m
.ZI 2m "\fCcsp_TABOODIRS_ADD\fP, \fCcsp_TABOODIRS_SKIP\fP"
\&
.br
see
\fCcsp_TABOOFILES\fP equivalents\&.
.in -2m
.ZI 2m "\fCcsp_UHOSTS_SUBSET\fP"
\&
.br
override csp_UHOSTS: don\&'t push to csp_UHOSTS, but
to the intersection of this space separated list of user@host items and
csp_UHOSTS\&.
.in -2m
The following variables might get phased out or removed soonish:
.ZI 2m "\fCcsp_CPFLAGS\fP"
\&
.br
extra arguments to pass to cp invocation, none by
default
.in -2m
.ZI 2m "\fCcsp_SCPFLAGS\fP"
\&
.br
extra arguments to pass to scp invocation, e\&.g\&.
\&'\fC-i \&.ssh/id_rsa-root\fP\&'
.in -2m
.SH EXAMPLES
Some examples:
\fBUsing csp_UHOST\fP
.br
This is the simplest way to use caspar\&. \fIMakefile\fP is
.di ZV
.in 0
.nf \fC
csp_UHOST = root@some\&.host\&.somewhere
csp_DIR = /etc/
include caspar/mk/caspar\&.mk
.fi \fR
.in
.di
.ne \n(dnu
.nf \fC
.ZV
.fi \fR
Now, running "make" will scp all files in the current directory to
\fCroot@some\&.host\&.somewhere:/etc/\fP\&.
\fBMore hosts, not scp but sudo via ssh: using csp_PUSH\fP
.br
\fIMakefile\fP is
.di ZV
.in 0
.nf \fC
csp_UHOSTS = root@some\&.host\&.somewhere root@some\&.other\&.host
csp_PUSH = $(csp_sucp_FUNC)
csp_DIR = /etc/
include caspar/mk/caspar\&.mk
.fi \fR
.in
.di
.ne \n(dnu
.nf \fC
.ZV
.fi \fR
Now, running "make" will use csp_sucp(1) to install all files in the current
directory to both root@some\&.host\&.somewhere:/etc/ and
root@some\&.other\&.host:/etc/\&. If a file named \fCfstab\fP is present in the
current directory, running "make fstab-install" will just install that one
file\&.
If you need to sudo(1) to another user on the remote host, add something like
.di ZV
.in 0
.nf \fC
csp_XARG = postgres
.fi \fR
.in
.di
.ne \n(dnu
.nf \fC
.ZV
.fi \fR
\&. (If such a username is not supplied, sudo (and csp_sucp) use the default:
root\&.)
\fBOverriding csp_UHOSTS: csp_UHOSTS_SKIP\fP
.br
If one or some of your hosts are temporarily unavailable, and you\&'d like to
push your files to the hosts which are alive, you can temporarily override your
csp_UHOSTS\&. E\&.g\&., when some\&.other\&.host is not available:
.di ZV
.in 0
.nf \fC
% cat Makefile
csp_UHOSTS = root@some\&.host\&.somewhere root@some\&.other\&.host
csp_DIR = /etc/
include caspar/mk/caspar\&.mk
% make install csp_UHOSTS_SKIP=root@some\&.other\&.host
scp hosts root@some\&.host\&.somewhere:/etc/
scp fstab root@some\&.host\&.somewhere:/etc/
.fi \fR
.in
.di
.ne \n(dnu
.nf \fC
.ZV
.fi \fR
\fBOverriding csp_UHOSTS in a smart way: csp_UHOSTS_SUBSET\&. Using multiple
groups of hosts\&. Recursive make made easy\&.\fP
.br
If you have lots of subdirectories holding information for lots of groups of
hosts, while this run you just want to install for a small group (or 1) hosts,
csp_UHOSTS_SUBSET is useful\&.
Suppose your casparized tree looks like
.di ZV
.in 0
.nf \fC
Makefile
apache/include/install\&.mk
apache/etc/apache2/Makefile
apache/etc/apache2/envvars
php/include/install\&.mk
php/etc/php4/apache/Makefile
php/etc/php4/apache/php\&.ini
grub/include/install\&.mk
grub/boot/grub/Makefile
grub/boot/grub/menu\&.lst
logrotate/include/install\&.mk
logrotate/etc/Makefile
logrotate/etc/logrotate\&.conf
nrpe/include/install\&.mk
nrpe/debian/etc/default/Makefile
nrpe/debian/etc/default/nagios-nrpe-server
.fi \fR
.in
.di
.ne \n(dnu
.nf \fC
.ZV
.fi \fR
The file \fIapache/etc/apache2/Makefile\fP is:
.di ZV
.in 0
.nf \fC
csp_DIR = /etc/apache2/
include \&.\&./\&.\&./include/install\&.mk
.fi \fR
.in
.di
.ne \n(dnu
.nf \fC
.ZV
.fi \fR
(all other \fIMakefile\fPs are similar)\&.
The file \fIapache/include/install\&.mk\fP is
.di ZV
.in 0
.nf \fC
csp_UHOSTS = root@a root@b
include caspar/mk/caspar\&.mk
.fi \fR
.in
.di
.ne \n(dnu
.nf \fC
.ZV
.fi \fR
The file \fIphp/include/install\&.mk\fP is the same\&. The files
\fIgrub/include/install\&.mk\fP and \fIlogrotate/include/install\&.mk\fP are
.di ZV
.in 0
.nf \fC
csp_UHOSTS = root@d root@e root@f root@g
include caspar/mk/caspar\&.mk
.fi \fR
.in
.di
.ne \n(dnu
.nf \fC
.ZV
.fi \fR
The file \fInrpe/include/install\&.mk\fP is
.di ZV
.in 0
.nf \fC
csp_UHOSTS = root@d root@e root@f root@n
include caspar/mk/caspar\&.mk
.fi \fR
.in
.di
.ne \n(dnu
.nf \fC
.ZV
.fi \fR
The toplevel \fIMakefile\fP is
.di ZV
.in 0
.nf \fC
dirs = $(patsubst %/Makefile,%,$(shell find * -mindepth 1
-name Makefile))
all:
for i in $(dirs); do $(MAKE) -$(MAKEFLAGS) -C $$i; done
install
for i in $(dirs); do $(MAKE) -$(MAKEFLAGS) -C $$i install; done
load
for i in $(dirs); do $(MAKE) -$(MAKEFLAGS) -C $$i load; done
.fi \fR
.in
.di
.ne \n(dnu
.nf \fC
.ZV
.fi \fR
(we don\&'t feel like sticking a \fIMakefile\fP in all non-leaf nodes of our tree)\&.
Now, when running "\fCcsp_UHOSTS_SUBSET=\&'root@e root@f root@m root@n\&' make\fP"
in the toplevel, caspar just takes the intersection of csp_UHOSTS_SUBSET and
csp_UHOSTS for each csp_UHOSTS list\&. So, caspar will not push anything for
\fIapache/\fP and \fIphp/\fP\&. The files \fIgrub/boot/grub/menu\&.lst\fP and
\fIlogrotate/etc/logrotate\&.conf\fP will get pushed to \fCroot@e\fP and
\fCroot@f\fP only\&. The file \fInrpe/debian/etc/default/nagios-nrpe-server\fP
will get pushed to \fCroot@e\fP, \fCroot@f\fP and \fCroot@n\fP\&.
This is often better than just overriding csp_UHOSTS on the commandline (or in
your shell\&'s environment): if the intersection of the original csp_UHOSTS and
your new csp_UHOSTS is empty, chances are big you\&'ve just forgotten to clean
your environment\&.
\fBCreating remote directories if needed\fP
.br
\fIMakefile\fP is
.di ZV
.in 0
.nf \fC
csp_DIR = /some/dir/ectory/
csp_PUSH = $(csp_scpmkdir_FUNC)
csp_UHOST = root@some\&.host\&.somewhere
include caspar/mk/caspar\&.mk
.fi \fR
.in
.di
.ne \n(dnu
.nf \fC
.ZV
.fi \fR
Now, before calling scp, caspar will run \&'mkdir -p\&' to create any missing
remote directories\&.
\fBUsing csp_CP and csp_LOAD\fP
.br
\fIusername/etc/Makefile\fP is
.di ZV
.in 0
.nf \fC
csp_UHOST = dummy
csp_PUSH = $(csp_cp_FUNC)
csp_DIR = $(HOME)/etc/
csp_LOAD = crontab-load
include \&.\&./include/install\&.mk
crontab-load = crontab $(csp_DIR)/crontab
.fi \fR
.in
.di
.ne \n(dnu
.nf \fC
.ZV
.fi \fR
while \fI\&.\&./include/install\&.mk\fP is just
.di ZV
.in 0
.nf \fC
include caspar/mk/caspar\&.mk
.fi \fR
.in
.di
.ne \n(dnu
.nf \fC
.ZV
.fi \fR
\&.
Setting \fCcsp_PUSH\fP to \fC$(csp_cp_FUNC)\fP causes cp(1) to get executed
by "make install" (not scp(1))\&.
Setting \fCcsp_LOAD\fP causes "make load" to execute the crontab command\&. Just
running "make" is OK too, since "make" calls both "make install" and "make
load"\&.
\fBUsing csp_DIR, csp_LOAD and install(1)\fP
.br
To install a file on the local host, create e\&.g\&. a file \fIetc/uruk/Makefile\fP
like:
.di ZV
.in 0
.nf \fC
csp_UHOST = dummy
csp_DIR = /etc/uruk/
csp_PUSH = $(csp_install_FUNC)
csp_LOAD = uruk-load
include caspar/mk/caspar\&.mk
uruk-load = sudo invoke-rc\&.d uruk force-reload
.fi \fR
.in
.di
.ne \n(dnu
.nf \fC
.ZV
.fi \fR
\fBUsing csp_DIR and csp_LOAD, take 2\fP
.br
\fIetc/Makefile\fP is
.di ZV
.in 0
.nf \fC
csp_DIR = /etc/
csp_LOAD = aliases-load
include \&.\&./include/install\&.mk
aliases-load = $(csp_SSH) $1 "cd /etc && postalias aliases; postfix reload"
.fi \fR
.in
.di
.ne \n(dnu
.nf \fC
.ZV
.fi \fR
while \fI\&.\&./include/install\&.mk\fP is
.di ZV
.in 0
.nf \fC
csp_UHOST = root@some\&.host\&.somewhere
include caspar/mk/caspar\&.mk
.fi \fR
.in
.di
.ne \n(dnu
.nf \fC
.ZV
.fi \fR
\fBBuilding files locally\fP
.br
Note: csp_BUILD is deprecated\&. You should not use it\&.
If you\&'d like to build some files locally from local sources, before installing
the just built files, do e\&.g\&.:
.di ZV
.in 0
.nf \fC
csp_UHOST = root@some\&.host\&.somewhere
csp_DIR = /etc/
csp_EXTRAFILES = sshd_config
csp_TABOOFILES_ADD = sshd_config\&.m4
include caspar/mk/caspar\&.mk
sshd_config: sshd_config\&.m4
m4 $< > $@
.fi \fR
.in
.di
.ne \n(dnu
.nf \fC
.ZV
.fi \fR
List all source files in csp_TABOOFILES_ADD: this way, they won\&'t get installed
on the csp_UHOST\&.
\fBUsing csp_sucp_FUNC and csp_LOAD\fP
.br
If you\&'d like to use csp_sucp and want a \&`load\&' target, do something like:
.di ZV
.in 0
.nf \fC
csp_PUSH = $(csp_sucp_FUNC)
csp_UHOST = foobar\&.example\&.com
csp_DIR = /etc/uruk/
csp_LOAD = rc-load
include caspar/mk/caspar\&.mk
rc-load = $(csp_SSH) $1 sudo invoke-rc\&.d uruk force-reload
.fi \fR
.in
.di
.ne \n(dnu
.nf \fC
.ZV
.fi \fR
caspar-20170830/doc/caspar-typesetting.7 0000644 0001751 0001751 00000007220 13151515327 014643 0000000 0000000 .\" Copyright (c) 2017 Joost van Baal-Ilić
.TH "caspar-typesetting" 7 "30 авг 2017" "caspar-typesetting 20170830" "MISCELLANEOUS "
.po 2m
.de ZI
.\" Zoem Indent/Itemize macro I.
.br
'in +\\$1
.nr xa 0
.nr xa -\\$1
.nr xb \\$1
.nr xb -\\w'\\$2'
\h'|\\n(xau'\\$2\h'\\n(xbu'\\
..
.de ZJ
.br
.\" Zoem Indent/Itemize macro II.
'in +\\$1
'in +\\$2
.nr xa 0
.nr xa -\\$2
.nr xa -\\w'\\$3'
.nr xb \\$2
\h'|\\n(xau'\\$3\h'\\n(xbu'\\
..
.if n .ll -2m
.am SH
.ie n .in 4m
.el .in 8m
..
.SH NAME
caspar-typesetting - Makefile snippets for common typesetting tasks
.SH SYNOPSIS
In a Makefile, write
.di ZV
.in 0
.nf \fC
include caspar/mk/docbook\&.mk
.fi \fR
.in
.di
.ne \n(dnu
.nf \fC
.ZV
.fi \fR
or
.di ZV
.in 0
.nf \fC
include caspar/mk/pod\&.mk
.fi \fR
.in
.di
.ne \n(dnu
.nf \fC
.ZV
.fi \fR
\&.
.SH DESCRIPTION
The caspar \fIdocbook\&.mk\fP and \fIpod\&.mk\fP files are Makefile snippets for common
typesetting tasks, like typesetting LaTeX (see [3]), DocBook
XML, DocBook SGML (see [2]) and POD (see [1]) documents\&.
You just have to type \fCmake\fP, instead of stuff like \fCjade -t tex -d
caspar/print\&.dsl /usr/share/sgml/declaration/xml\&.dcl foobar\&.dbx\fP\&.
.SH USAGE
In a directory where you maintain \&.dbx (Docbook XML) or \&.tex (LaTeX) files, do
.di ZV
.in 0
.nf \fC
$ echo include caspar/mk/docbook\&.mk > Makefile
$ vi karenina\&.dbx
$ make karenina\&.view
$ make karenina\&.print
$ vi svejk\&.tex
$ make svejk\&.view
$ make svejk\&.print
$ make
$ make clean
.fi \fR
.in
.di
.ne \n(dnu
.nf \fC
.ZV
.fi \fR
Other targets: \fCfilename\&.ps\fP, \fCfilename\&.pdf\fP, \fCfilename\&.2ps\fP, \fCfilename\&.html\fP,
\fCfilename\&.printbig\fP, \fCfilename\&.dvi\fP\&.
Variables you might like to set in your Makefile: \fCXMLDCL\fP (default is
\fC/usr/share/sgml/declaration/xml\&.dcl\fP; if you\&'re not on a Debian GNU/Linux
system, you\&'ll likely have to adjust this), \fCHTML_DSL\fP, \fCPRINT_DSL\fP\&.
In a directory where you maintain \&.pod files, do
.di ZV
.in 0
.nf \fC
$ echo include caspar/mk/pod\&.mk > Makefile
$ vi lire\&.pod
$ perldoc \&./lire\&.pod
$ make lire\&.pdf
$ make
$ less lire\&.overstrike-txt
$ make clean
.fi \fR
.in
.di
.ne \n(dnu
.nf \fC
.ZV
.fi \fR
Other targets: \fCfilename\&.ps\fP, \fCfilename\&.html\fP, \fCfilename\&.txt\fP, \&.\&.\&.
(Similar to the ones supplied by \fIdocbook\&.mk\fP)\&.
.SH EXAMPLES
Some examples: Overriding the caspar-supplied DSSSL files: Create your own
print\&.dls and html\&.dsl, in the same directory as your Docbook XML files\&. Your
Makefile should read:
.di ZV
.in 0
.nf \fC
PRINT_DSL = print\&.dsl
HTML_DSL = html\&.dsl
include caspar/mk/docbook\&.mk
.fi \fR
.in
.di
.ne \n(dnu
.nf \fC
.ZV
.fi \fR
Overriding the standard html-to-text convertor:
.di ZV
.in 0
.nf \fC
$ W3M=lynx make svejk\&.txt
.fi \fR
.in
.di
.ne \n(dnu
.nf \fC
.ZV
.fi \fR
\&.
.SH FILES
\fIcaspar/mk/docbook\&.mk\fP, \fIcaspar/mk/pod\&.mk\fP
.SH ENVIRONMENT
For \fIdocbook\&.mk\fP: files: \fCXMLDCL\fP, \fCHTML_DSL\fP, \fCPRINT_DSL\fP;
utilities: \fCJADE\fP, \fCPDFJADETEX\fP, \fCPDFLATEX\fP, \fCJADETEX\fP, \fCLATEX\fP,
\fCW3M\fP, \fCDVIPS\fP, \fCPSNUP\fP, \fCLPR\fP, \fCGV\fP; settings:
\fCJADE_MAXERRORS\fP\&. These variables can get adjusted in Makefile, as well as
in the shell environment\&.
\fIpod\&.mk\fP Uses no environment variables\&.
.SH AUTHOR
Joost van Baal-Ilić
.SH SEE ALSO
\fBcaspar(7)\fP
[1]
perlpod(1) about Perl\&'s Plain Old Documentation format
[2]
\fIDocBook: The Definitive Guide\fP on http://docbook\&.org/,
[3]
The LaTeX Project Homepage on http://www\&.latex-project\&.org/\&.
Some comments on advanced usage are in the files \fIdocbook\&.mk\fP and \fIpod\&.mk\fP
itself\&.
caspar-20170830/mk/ 0000755 0001751 0001751 00000000000 13151515336 010646 5 0000000 0000000 caspar-20170830/mk/Makefile.in 0000644 0001751 0001751 00000031663 13151515275 012646 0000000 0000000 # Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
@SET_MAKE@
VPATH = @srcdir@
am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
*) echo "am__make_running_with_option: internal error: invalid" \
"target option '$${target_option-}' specified" >&2; \
exit 1;; \
esac; \
has_opt=no; \
sane_makeflags=$$MAKEFLAGS; \
if $(am__is_gnu_make); then \
sane_makeflags=$$MFLAGS; \
else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
bs=\\; \
sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
| sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
esac; \
fi; \
skip_next=no; \
strip_trailopt () \
{ \
flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
}; \
for flg in $$sane_makeflags; do \
test $$skip_next = yes && { skip_next=no; continue; }; \
case $$flg in \
*=*|--*) continue;; \
-*I) strip_trailopt 'I'; skip_next=yes;; \
-*I?*) strip_trailopt 'I';; \
-*O) strip_trailopt 'O'; skip_next=yes;; \
-*O?*) strip_trailopt 'O';; \
-*l) strip_trailopt 'l'; skip_next=yes;; \
-*l?*) strip_trailopt 'l';; \
-[dEDm]) skip_next=yes;; \
-[JT]) skip_next=yes;; \
esac; \
case $$flg in \
*$$target_option*) has_opt=yes; break;; \
esac; \
done; \
test $$has_opt = yes
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
subdir = mk
DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/VERSION.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
AM_V_P = $(am__v_P_@AM_V@)
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
am__v_P_0 = false
am__v_P_1 = :
AM_V_GEN = $(am__v_GEN_@AM_V@)
am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
am__v_GEN_0 = @echo " GEN " $@;
am__v_GEN_1 =
AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
SOURCES =
DIST_SOURCES =
am__can_run_installinfo = \
case $$AM_UPDATE_INFO_DIR in \
n|no|NO) false;; \
*) (install-info --version) >/dev/null 2>&1;; \
esac
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
*) f=$$p;; \
esac;
am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
am__install_max = 40
am__nobase_strip_setup = \
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
am__nobase_strip = \
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
am__nobase_list = $(am__nobase_strip_setup); \
for p in $$list; do echo "$$p $$p"; done | \
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
if (++n[$$2] == $(am__install_max)) \
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
END { for (dir in files) print dir, files[dir] }'
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
am__uninstall_files_from_dir = { \
test -z "$$files" \
|| { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
|| { echo " ( cd '$$dir' && rm -f" $$files ")"; \
$(am__cd) "$$dir" && rm -f $$files; }; \
}
am__installdirs = "$(DESTDIR)$(mkdir)"
DATA = $(mk_DATA)
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
PACKAGE = @PACKAGE_TARNAME@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRIP = @STRIP@
VERSION = @VERSION@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
am__leading_dot = @am__leading_dot@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build_alias = @build_alias@
builddir = @builddir@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
host_alias = @host_alias@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
mkdir = $(datadir)/$(PACKAGE)/mk
mk_DATA = caspar.mk docbook.mk pod.mk
EXTRA_DIST = caspar.mk docbook.mk pod.mk
all: all-am
.SUFFIXES:
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu mk/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --gnu mk/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
*) \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(top_srcdir)/configure: $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
install-mkDATA: $(mk_DATA)
@$(NORMAL_INSTALL)
@list='$(mk_DATA)'; test -n "$(mkdir)" || list=; \
if test -n "$$list"; then \
echo " $(MKDIR_P) '$(DESTDIR)$(mkdir)'"; \
$(MKDIR_P) "$(DESTDIR)$(mkdir)" || exit 1; \
fi; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(mkdir)'"; \
$(INSTALL_DATA) $$files "$(DESTDIR)$(mkdir)" || exit $$?; \
done
uninstall-mkDATA:
@$(NORMAL_UNINSTALL)
@list='$(mk_DATA)'; test -n "$(mkdir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
dir='$(DESTDIR)$(mkdir)'; $(am__uninstall_files_from_dir)
tags TAGS:
ctags CTAGS:
cscope cscopelist:
distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
dist_files=`for file in $$list; do echo $$file; done | \
sed -e "s|^$$srcdirstrip/||;t" \
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
check-am: all-am
check: check-am
all-am: Makefile $(DATA)
installdirs:
for dir in "$(DESTDIR)$(mkdir)"; do \
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
done
install: install-am
install-exec: install-exec-am
install-data: install-data-am
uninstall: uninstall-am
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
installcheck: installcheck-am
install-strip:
if test -z '$(STRIP)'; then \
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
install; \
else \
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
fi
mostlyclean-generic:
clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
clean: clean-am
clean-am: clean-generic mostlyclean-am
distclean: distclean-am
-rm -f Makefile
distclean-am: clean-am distclean-generic
dvi: dvi-am
dvi-am:
html: html-am
html-am:
info: info-am
info-am:
install-data-am: install-mkDATA
@$(NORMAL_INSTALL)
$(MAKE) $(AM_MAKEFLAGS) install-data-hook
install-dvi: install-dvi-am
install-dvi-am:
install-exec-am:
install-html: install-html-am
install-html-am:
install-info: install-info-am
install-info-am:
install-man:
install-pdf: install-pdf-am
install-pdf-am:
install-ps: install-ps-am
install-ps-am:
installcheck-am:
maintainer-clean: maintainer-clean-am
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-am
mostlyclean-am: mostlyclean-generic
pdf: pdf-am
pdf-am:
ps: ps-am
ps-am:
uninstall-am: uninstall-mkDATA
@$(NORMAL_INSTALL)
$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
.MAKE: install-am install-data-am install-strip uninstall-am
.PHONY: all all-am check check-am clean clean-generic cscopelist-am \
ctags-am distclean distclean-generic distdir dvi dvi-am html \
html-am info info-am install install-am install-data \
install-data-am install-data-hook install-dvi install-dvi-am \
install-exec install-exec-am install-html install-html-am \
install-info install-info-am install-man install-mkDATA \
install-pdf install-pdf-am install-ps install-ps-am \
install-strip installcheck installcheck-am installdirs \
maintainer-clean maintainer-clean-generic mostlyclean \
mostlyclean-generic pdf pdf-am ps ps-am tags-am uninstall \
uninstall-am uninstall-hook uninstall-mkDATA
install-data-hook:
$(mkdir_p) $(DESTDIR)$(includedir)/$(PACKAGE)/mk
for f in $(mk_DATA); do \
$(LN_S) $(mkdir)/$$f $(DESTDIR)$(includedir)/$(PACKAGE)/mk/$$f; \
done
uninstall-hook:
for f in $(mk_DATA); do \
rm $(DESTDIR)$(includedir)/$(PACKAGE)/mk/$$f; \
done
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
caspar-20170830/mk/Makefile.am 0000644 0001751 0001751 00000001056 13151515253 012622 0000000 0000000 ## Process this file with automake to produce Makefile.in
## This file is maintained at http://git.mdcc.cx/caspar
PACKAGE = @PACKAGE_TARNAME@
mkdir = $(datadir)/$(PACKAGE)/mk
mk_DATA = caspar.mk docbook.mk pod.mk
EXTRA_DIST = caspar.mk docbook.mk pod.mk
install-data-hook:
$(mkdir_p) $(DESTDIR)$(includedir)/$(PACKAGE)/mk
for f in $(mk_DATA); do \
$(LN_S) $(mkdir)/$$f $(DESTDIR)$(includedir)/$(PACKAGE)/mk/$$f; \
done
uninstall-hook:
for f in $(mk_DATA); do \
rm $(DESTDIR)$(includedir)/$(PACKAGE)/mk/$$f; \
done
caspar-20170830/mk/caspar.mk 0000644 0001751 0001751 00000016362 13151515253 012376 0000000 0000000 # This file is maintained at http://git.mdcc.cx/caspar
# Copyright (C) 2012 Joost van Baal-Ilić
# Copyright (C) 2002, 2003, 2004, 2005, 2006, 2009, 2010 Joost van Baal
# Copyright © 2012,2014 Wessel Dankers
#
# This file is part of caspar. Caspar 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. You should have received a copy of
# the GNU General Public License along with this file (see COPYING).
# see caspar(7) for usage
# possibility to choose own cp(1) and scp(1)
csp_CP ?= cp
csp_SCP ?= scp
csp_SUCP ?= csp_sucp
csp_SSH ?= ssh
csp_CAT ?= cat
csp_Diff ?= diff # csp_DIFF is reserved for the user interface...
csp_RSYNC ?= rsync
csp_MKDIRP ?= mkdir -p
csp_INSTALL ?= csp_install
csp_SCP_KEEP_MODE ?= csp_scp_keep_mode
csp_MKDIRCP ?= csp_mkdircp
# extra arguments for cp(1) and scp(1)
csp_CPFLAGS ?=
csp_SCPFLAGS ?=
csp_RSYNCFLAGS ?= -zPt --chmod=ugo=rwX
csp_DIFFXARG ?= -u
csp_EXTRAFILES ?=
csp_TABOOFILES_DEFAULT ?= Makefile .%.swp %~ \#%\# pod2htmd.tmp pod2htmi.tmp
csp_TABOOFILES ?= $(filter-out $(csp_TABOOFILES_SKIP),$(csp_TABOOFILES_DEFAULT)) $(csp_TABOOFILES_ADD)
csp_TABOODIRS_DEFAULT ?= CVS .svn
csp_TABOODIRS ?= $(filter-out $(csp_TABOODIRS_SKIP),$(csp_TABOODIRS_DEFAULT)) $(csp_TABOODIRS_ADD)
# wrap csp_SCP and other puch mechanisms in make function template
csp_scp_FUNC = $(csp_SCP) $(csp_SCPFLAGS) $(3) $(1):$(2)
csp_cp_FUNC = $(csp_CP) $(csp_CPFLAGS) -t $(2) $(3)
csp_sucp_FUNC = CSP_SUCP_USER=$(csp_SUCP_USER) $(csp_SUCP) $(1) $(2) $(3)
csp_rsync_FUNC = $(csp_RSYNC) $(csp_RSYNCFLAGS) $(3) $(1)::$(2)
csp_rsyncssh_FUNC = $(csp_RSYNC) $(csp_RSYNCFLAGS) $(3) $(1):$(2)
csp_diff_FUNC = $(csp_SSH) $(1) $(csp_CAT) $(2)/$(3) | $(csp_Diff) $(csp_DIFFXARG) - $(3)
csp_install_FUNC = $(csp_INSTALL) $(2) $(3)
csp_scp_keep_mode_FUNC = $(csp_SCP_KEEP_MODE) $(1) $(2) $(3)
csp_scpmkdir_FUNC = $(csp_SSH) $(1) $(csp_MKDIRP) $(2) && $(csp_scp_FUNC)
csp_mkdircp_FUNC = $(csp_MKDIRCP) $(2) $(3)
csp_PUSH ?= $(csp_scp_FUNC)
csp_DIFF ?= $(csp_diff_FUNC)
# we use plurals only
csp_UHOSTS ?= $(csp_UHOST)
# uhosts that should be excluded for whatever reason
_csp_UHOSTS_COMPUTED := $(filter-out $(csp_UHOSTS_SKIP),$(csp_UHOSTS))
ifneq ($(csp_UHOSTS_SUBSET),)
_csp_UHOSTS_COMPUTED := $(filter $(csp_UHOSTS_SUBSET),$(_csp_UHOSTS_COMPUTED))
endif
# files, not directories
_csp_FILES := $(shell for f in *; do test -f "$$f" && echo "$$f"; done)
# add built files, exclude editor backup files and other stuff
_csp_FILES := $(filter-out $(csp_TABOOFILES),$(_csp_FILES) $(csp_BUILD))
# user specified files
_csp_FILES := $(sort $(_csp_FILES) $(csp_EXTRAFILES))
_csp_INSTALLTARGETS := $(patsubst %,%-install,$(_csp_FILES))
_csp_BULKTARGETS := $(if $(_csp_FILES),$(patsubst %,%--bulk-push,$(_csp_UHOSTS_COMPUTED)))
_csp_DIFFTARGETS := $(patsubst %,%-diff,$(_csp_FILES))
_csp_LOADTARGETS := $(csp_LOAD)
# Generate (a possibly empty) list of automatic check targets based on
# a given set of load targets.
#
# Any load target that does not end in -check gets -check appended to it.
# Any load target that does not end in -check but does end in -* (for
# any * that does not contain dashes) gets the last part replaced by
# -check. In other words: s/-[^-]+$/-check/.
# Then, finally, we restrict the list thus generated to variables that
# are actually defined by the user.
#
# GNU make functions have limitations that force us to take a very
# roundabout way of doing this. For example, in patsubst and filter
# patterns only the first % is a wildcard.
#
# In the implementation below, dashverb is the word following the last
# dash in the word (for "foo-bar-load" that would be "load").
#
# Implementation note: uses foreach on singleton lists as a cheap way to
# create local variables.
# Usage: $(call _csp_autochecktargets,foo-load bar-load)
_csp_autochecktargets = $(sort\
$(foreach target,\
$(patsubst %,%-check,$(filter-out %-check,$1))\
$(foreach dashtarget,$(filter-out %-check,$1),\
$(foreach dashverb,$(lastword $(subst -, ,$(dashtarget))),\
$(patsubst %-$(dashverb),%-check,$(filter %-$(dashverb),$(dashtarget)))\
)\
),\
$(if $($(target)),$(target))\
)\
)
# generate check targets based on csp_LOAD
_csp_CHECKTARGETS := $(sort $(csp_CHECK) $(call _csp_autochecktargets,$(csp_LOAD)))
_csp_VERIFYTARGETS := $(patsubst %,%-verify,$(_csp_FILES))
_csp_DIRS := $(shell for d in *; do test -d "$$d" && echo "$$d"; done)
_csp_DIRS := $(filter-out $(csp_TABOODIRS),$(_csp_DIRS))
all:
$(MAKE) build
$(MAKE) install
$(MAKE) load
define _csp_filetargets
$1-install: $(foreach host,$(_csp_UHOSTS_COMPUTED),$1--$(host)--push)
$1-diff: $(foreach host,$(_csp_UHOSTS_COMPUTED),$1--$(host)--diff)
endef
define _csp_bulktargets
$2--bulk-push: $1 $(patsubst %,%-verify,$1)
$$(call csp_PUSH,$2,$$(csp_DIR),$1)
endef
$(foreach host,$(_csp_UHOSTS_COMPUTED),\
$(eval $(call _csp_bulktargets,$(_csp_FILES),$(host))))
define _csp_remotetargets
$1--$2--push: $1 $1-verify
$$(call csp_PUSH,$2,$$(csp_DIR),$1)
$1--$2--diff: $1
$$(call csp_DIFF,$2,$$(csp_DIR),$1)
endef
$(foreach file,$(_csp_FILES),\
$(eval $(call _csp_filetargets,$(file)))\
$(foreach host,$(_csp_UHOSTS_COMPUTED),\
$(eval $(call _csp_remotetargets,$(file),$(host)))))
define _csp_checktarget
$1: $(patsubst %,$1--%--check,$(_csp_UHOSTS_COMPUTED))
endef
define _csp_checktargets
$1--$2--check:
$$(call $1,$2)
endef
$(foreach check,$(_csp_CHECKTARGETS),\
$(eval $(call _csp_checktarget,$(check)))\
$(foreach host,$(_csp_UHOSTS_COMPUTED),\
$(eval $(call _csp_checktargets,$(check),$(host)))))
define _csp_loadtarget
$1: $(patsubst %,$1--%--load,$(_csp_UHOSTS_COMPUTED))
endef
define _csp_loadtargets
$1--$2--load: $(sort $(csp_CHECK) $(call _csp_autochecktargets,$1))
$$(call $1,$2)
endef
$(foreach load,$(_csp_LOADTARGETS),\
$(eval $(call _csp_loadtarget,$(load)))\
$(foreach host,$(_csp_UHOSTS_COMPUTED),\
$(eval $(call _csp_loadtargets,$(load),$(host)))))
define _csp_do_recursive
$1--install-recursive:
$(MAKE) -C $1 install-recursive
endef
$(foreach dir,$(_csp_DIRS),$(eval $(call _csp_do_recursive,$(dir))))
# empty verify target so that we don't break on files without a check.
%-verify:;
build: $(csp_BUILD)
diff: $(_csp_DIFFTARGETS)
install: $(_csp_BULKTARGETS)
install-recursive: install $(patsubst %,%--install-recursive,$(_csp_DIRS))
load: $(_csp_LOADTARGETS)
check: $(_csp_CHECKTARGETS)
verify: $(_csp_VERIFYTARGETS)
debug:
@echo csp_UHOSTS = $(csp_UHOSTS)
@echo csp_PUSH = $(call csp_PUSH,user@host,dir,file1 file2)
@echo _csp_INSTALLTARGETS = $(_csp_INSTALLTARGETS)
@echo _csp_BULKTARGETS = $(_csp_BULKTARGETS)
@echo _csp_FILES = $(_csp_FILES)
@echo _csp_UHOSTS_COMPUTED = $(_csp_UHOSTS_COMPUTED)
@echo _csp_CHECKTARGETS = $(_csp_CHECKTARGETS)
@echo _csp_VERIFYTARGETS = $(_csp_VERIFYTARGETS)
# can't put _csp_VERIFYTARGETS in this list because that would disable
# wildcard ("implicit") patterns
.PHONY: $(csp_BUILD) $(_csp_INSTALLTARGETS) $(_csp_BULKTARGETS) $(_csp_CHECKTARGETS) $(_csp_LOADTARGETS) $(_csp_DIFFTARGETS) build diff verify install install-recursive load check debug
caspar-20170830/mk/docbook.mk 0000644 0001751 0001751 00000006322 13151515253 012540 0000000 0000000 # This file is maintained at http://git.mdcc.cx/caspar
# Copyright (C) 2002, 2003, 2004 Joost van Baal
#
# This file is part of caspar. Caspar 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. You should have received a copy of
# the GNU General Public License along with this file (see COPYING).
# See caspar-typesetting(7) for usage information.
# see also /usr/local/src/debian/maint-guide/maint-guide-1.0.2/Makefile
# for a debiandoc-sgml example.
XMLDCL ?= /usr/share/sgml/declaration/xml.dcl
# my jade looks in "caspar/print.dsl",
# "/usr/local/share/sgml/caspar/print.dsl",
# "/usr/local/lib/sgml/caspar/print.dsl",
# "/usr/share/sgml/caspar/print.dsl"
# when i specify -d caspar/print.dsl
#
# when using your own print.dsl, your Makefile could read
#
# PRINT_DSL = print.dsl
# include caspar/mk/docbook.mk
#
#
HTML_DSL ?= caspar/html.dsl
PRINT_DSL ?= caspar/print.dsl
# JADE = /usr/bin/jade
JADE ?= jade
# jade's -E option. the jade default is 200. we choose a maximum
# of 10 errors: we don't wanna have our console spammed by errormessages
JADE_MAXERRORS ?= 10
PDFJADETEX ?= pdfjadetex
PDFLATEX ?= pdflatex
JADETEX ?= jadetex
LATEX ?= latex
W3M ?= w3m
DVIPS ?= dvips
PSNUP ?= psnup
LPR ?= lpr
# gnome-gv might do well too
GV ?= gv
SGML2HTML_RULE = $(JADE) -E$(JADE_MAXERRORS) -t sgml -d $(HTML_DSL) $<
XML2HTML_RULE = $(JADE) -E$(JADE_MAXERRORS) -t sgml -d $(HTML_DSL) \
$(XMLDCL) $<
# lynx doesn't deal well with too wide blurbs of :(
HTML2TXT_RULE = $(W3M) -dump $< > $@
SGML2JTEX_RULE = $(JADE) -E$(JADE_MAXERRORS) -t tex -d $(PRINT_DSL) \
-o $@ $<
XML2JTEX_RULE = $(JADE) -E$(JADE_MAXERRORS) -t tex -d $(PRINT_DSL) \
-o $@ $(XMLDCL) $<
# run three times for toc processing
JTEX2DVI_RULE = $(JADETEX) $< && $(JADETEX) $< && $(JADETEX) $< && \
rm -f $*.log $*.out $*.aux
# rm -f: intermediate files might not exist
JTEX2PDF_RULE = $(PDFJADETEX) $< && $(PDFJADETEX) $< && $(PDFJADETEX) $< && \
rm -f $*.log $*.out $*.aux
# One of the GNU Make implicit rules makes N.dvi from N.tex with the
# command $(TEX)
TEX2DVI_RULE = $(LATEX) $< && $(LATEX) $< && $(LATEX) $< && \
rm -f $*.log $*.aux
DVI2PS_RULE = $(DVIPS) -f < $< > $@
TEX2PDF_RULE = $(PDFLATEX) $< && $(PDFLATEX) $< && $(PDFLATEX) $< && \
rm -f $*.log $*.aux
PS22PS_RULE = $(PSNUP) -2 $< $@
# create nice default target
sources := $(basename $(wildcard *.dbx *.tex *.sgml))
outputs := $(addsuffix .ps,$(sources)) $(addsuffix .pdf,$(sources)) \
$(addsuffix .html,$(sources)) $(addsuffix .txt,$(sources))
typeset: $(outputs)
%.jtex: %.sgml
$(SGML2JTEX_RULE)
%.jtex: %.dbx
$(XML2JTEX_RULE)
%.dvi: %.jtex
$(JTEX2DVI_RULE)
%.dvi: %.tex
$(TEX2DVI_RULE)
%.ps: %.dvi
$(DVI2PS_RULE)
%.pdf: %.tex
$(TEX2PDF_RULE)
%.pdf: %.jtex
$(JTEX2PDF_RULE)
%.html: %.sgml
$(SGML2HTML_RULE)
%.html: %.dbx
$(XML2HTML_RULE)
%.txt: %.html
$(HTML2TXT_RULE)
%.2ps: %.ps
$(PS22PS_RULE)
%.view: %.ps
$(GV) $<
%.print: %.2ps
$(LPR) $<
%.printbig: %.ps
$(LPR) $<
clean:
-rm *.aux *.log *.dvi *.jtex
.PRECIOUS: %.ps %.html
caspar-20170830/mk/pod.mk 0000644 0001751 0001751 00000003002 13151515253 011672 0000000 0000000 # This file is maintained at http://git.mdcc.cx/caspar
#
# pod.mk - typeset documentation from .pod files . See perlpod(1) for
# information on Perl's pod, Plain Old Documention .
#
# See caspar-typesetting(7) for usage info.
#
# this Makefile snippet needs GNU Make
# Copyright (C) 2003 Joost van Baal
#
# This file is part of caspar. Caspar 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. You should have received a copy of
# the GNU General Public License along with this file (see COPYING).
PODS := $(shell for f in *.pod; do test -f $$f && echo -n $$f " "; done)
BASES := $(basename $(PODS))
TXTS := $(patsubst %,%.txt,$(BASES))
OVERSTRIKES := $(patsubst %,%.overstrike-txt,$(BASES))
HTMLS := $(patsubst %,%.html,$(BASES))
TROFFS := $(patsubst %,%.7,$(BASES))
PSS := $(patsubst %,%.ps,$(BASES))
PDFS := $(patsubst %,%.pdf,$(BASES))
typeset: $(TXTS) $(HTMLS) $(TROFFS) $(PSS) $(PDFS)
%.7: %.pod
pod2man --utf8 $< $@
%.html: %.pod
pod2html --infile=$< --outfile=$@
# view install.overstrike-txt with less(1)
%.overstrike-txt: %.pod
pod2text --overstrike $< $@
%.txt: %.pod
pod2text $< $@
# two pages on one sheet:
# a2ps -o $@ $<
%.ps: %.7
man -l -Tps $< > $@
%.pdf: %.pod
pod2pdf $< > $@
clean:
-rm -f $(PDFS) $(PSS) $(HTMLS) $(TXTS) $(OVERSTRIKES) $(TROFFS)
caspar-20170830/sgml/ 0000755 0001751 0001751 00000000000 13151515336 011201 5 0000000 0000000 caspar-20170830/sgml/Makefile.in 0000644 0001751 0001751 00000030751 13151515275 013176 0000000 0000000 # Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
@SET_MAKE@
VPATH = @srcdir@
am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
*) echo "am__make_running_with_option: internal error: invalid" \
"target option '$${target_option-}' specified" >&2; \
exit 1;; \
esac; \
has_opt=no; \
sane_makeflags=$$MAKEFLAGS; \
if $(am__is_gnu_make); then \
sane_makeflags=$$MFLAGS; \
else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
bs=\\; \
sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
| sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
esac; \
fi; \
skip_next=no; \
strip_trailopt () \
{ \
flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
}; \
for flg in $$sane_makeflags; do \
test $$skip_next = yes && { skip_next=no; continue; }; \
case $$flg in \
*=*|--*) continue;; \
-*I) strip_trailopt 'I'; skip_next=yes;; \
-*I?*) strip_trailopt 'I';; \
-*O) strip_trailopt 'O'; skip_next=yes;; \
-*O?*) strip_trailopt 'O';; \
-*l) strip_trailopt 'l'; skip_next=yes;; \
-*l?*) strip_trailopt 'l';; \
-[dEDm]) skip_next=yes;; \
-[JT]) skip_next=yes;; \
esac; \
case $$flg in \
*$$target_option*) has_opt=yes; break;; \
esac; \
done; \
test $$has_opt = yes
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
subdir = sgml
DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/VERSION.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
AM_V_P = $(am__v_P_@AM_V@)
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
am__v_P_0 = false
am__v_P_1 = :
AM_V_GEN = $(am__v_GEN_@AM_V@)
am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
am__v_GEN_0 = @echo " GEN " $@;
am__v_GEN_1 =
AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
SOURCES =
DIST_SOURCES =
am__can_run_installinfo = \
case $$AM_UPDATE_INFO_DIR in \
n|no|NO) false;; \
*) (install-info --version) >/dev/null 2>&1;; \
esac
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
*) f=$$p;; \
esac;
am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
am__install_max = 40
am__nobase_strip_setup = \
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
am__nobase_strip = \
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
am__nobase_list = $(am__nobase_strip_setup); \
for p in $$list; do echo "$$p $$p"; done | \
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
if (++n[$$2] == $(am__install_max)) \
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
END { for (dir in files) print dir, files[dir] }'
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
am__uninstall_files_from_dir = { \
test -z "$$files" \
|| { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
|| { echo " ( cd '$$dir' && rm -f" $$files ")"; \
$(am__cd) "$$dir" && rm -f $$files; }; \
}
am__installdirs = "$(DESTDIR)$(sgmldir)"
DATA = $(sgml_DATA)
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
PACKAGE = @PACKAGE_TARNAME@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRIP = @STRIP@
VERSION = @VERSION@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
am__leading_dot = @am__leading_dot@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build_alias = @build_alias@
builddir = @builddir@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
host_alias = @host_alias@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
sgmldir = $(datadir)/sgml/$(PACKAGE)
sgml_DATA = print.dsl html.dsl
EXTRA_DIST = $(sgml_DATA)
all: all-am
.SUFFIXES:
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu sgml/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --gnu sgml/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
*) \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(top_srcdir)/configure: $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
install-sgmlDATA: $(sgml_DATA)
@$(NORMAL_INSTALL)
@list='$(sgml_DATA)'; test -n "$(sgmldir)" || list=; \
if test -n "$$list"; then \
echo " $(MKDIR_P) '$(DESTDIR)$(sgmldir)'"; \
$(MKDIR_P) "$(DESTDIR)$(sgmldir)" || exit 1; \
fi; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(sgmldir)'"; \
$(INSTALL_DATA) $$files "$(DESTDIR)$(sgmldir)" || exit $$?; \
done
uninstall-sgmlDATA:
@$(NORMAL_UNINSTALL)
@list='$(sgml_DATA)'; test -n "$(sgmldir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
dir='$(DESTDIR)$(sgmldir)'; $(am__uninstall_files_from_dir)
tags TAGS:
ctags CTAGS:
cscope cscopelist:
distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
dist_files=`for file in $$list; do echo $$file; done | \
sed -e "s|^$$srcdirstrip/||;t" \
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
check-am: all-am
check: check-am
all-am: Makefile $(DATA)
installdirs:
for dir in "$(DESTDIR)$(sgmldir)"; do \
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
done
install: install-am
install-exec: install-exec-am
install-data: install-data-am
uninstall: uninstall-am
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
installcheck: installcheck-am
install-strip:
if test -z '$(STRIP)'; then \
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
install; \
else \
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
fi
mostlyclean-generic:
clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
clean: clean-am
clean-am: clean-generic mostlyclean-am
distclean: distclean-am
-rm -f Makefile
distclean-am: clean-am distclean-generic
dvi: dvi-am
dvi-am:
html: html-am
html-am:
info: info-am
info-am:
install-data-am: install-sgmlDATA
install-dvi: install-dvi-am
install-dvi-am:
install-exec-am:
install-html: install-html-am
install-html-am:
install-info: install-info-am
install-info-am:
install-man:
install-pdf: install-pdf-am
install-pdf-am:
install-ps: install-ps-am
install-ps-am:
installcheck-am:
maintainer-clean: maintainer-clean-am
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-am
mostlyclean-am: mostlyclean-generic
pdf: pdf-am
pdf-am:
ps: ps-am
ps-am:
uninstall-am: uninstall-sgmlDATA
.MAKE: install-am install-strip
.PHONY: all all-am check check-am clean clean-generic cscopelist-am \
ctags-am distclean distclean-generic distdir dvi dvi-am html \
html-am info info-am install install-am install-data \
install-data-am install-dvi install-dvi-am install-exec \
install-exec-am install-html install-html-am install-info \
install-info-am install-man install-pdf install-pdf-am \
install-ps install-ps-am install-sgmlDATA install-strip \
installcheck installcheck-am installdirs maintainer-clean \
maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
pdf-am ps ps-am tags-am uninstall uninstall-am \
uninstall-sgmlDATA
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
caspar-20170830/sgml/Makefile.am 0000644 0001751 0001751 00000000265 13151515253 013156 0000000 0000000 ## Process this file with automake to produce Makefile.in
PACKAGE = @PACKAGE_TARNAME@
sgmldir = $(datadir)/sgml/$(PACKAGE)
sgml_DATA = print.dsl html.dsl
EXTRA_DIST = $(sgml_DATA)
caspar-20170830/sgml/print.dsl 0000644 0001751 0001751 00000012445 13151515253 012765 0000000 0000000
]>
;; See dbparam.dsl for definitions of refentries
(define %section-autolabel% #t) ;; Sections are enumerated
(define %chapter-autolabel% #t) ;; Chapters are enumerated
(define %generate-article-toc% #t) ;; A Table of Contents should
;; be produced for Articles
(define %generate-article-titlepage-on-separate-page% #f)
(define %generate-article-titlepage% #t)
(define %generate-article-toc-on-titlepage% #t)
;; (define %visual-acuity% "normal") ;; General measure of document text
;; size. See dbparam.dsl. bf-size maps
;; visual-acuity to normal-param text
;; size. normal is 10pt, presbyopic is
;; 12pt.
;; we want it to look like default LaTeX. One could also choose
;; "Times New Roman" here.
(define %title-font-family% "Computer Modern")
;; The font family used in titles
(define %body-font-family% "Computer Modern")
;; The font family used in body text
(define %default-quadding% 'justify) ;; The default quadding ('start',
;; 'center', 'justify', or 'end').
(define %body-start-indent% 0em) ;; The default indent of body text.
;; Some elements may have more or
;; less indentation. 4pi is default
;; value
;; we have vertical whitespace between paragraphs
;; (define %para-indent% 2em) ;; First line start-indent for
;; paragraphs (other than the first)
(define article-titlepage-recto-style
(style
font-family-name: %title-font-family%
font-size: (HSIZE 1))) ;; overrule font of title on
;; titlepage, see dbttlpg.dsl. tnx
;;; setting to HSIZE 2 or 5 has no effect...
;; flacoste
(define (article-titlepage-recto-elements)
(list (normalize "title")
(normalize "subtitle")
(normalize "corpauthor")
(normalize "authorgroup")
(normalize "author")
(normalize "abstract")))
;; (normalize "revhistory"))) ;; revhistory added
;; article-titlepage-recto-elements in dbttlpg.dsl
(define (toc-depth nd) 2) ;; see dbautoc.dsl, default 1 for
;; article, 7 for book
(define (first-page-inner-footer gi)
(cond
((equal? (normalize gi) (normalize "dedication")) (empty-sosofo))
((equal? (normalize gi) (normalize "lot")) (empty-sosofo))
((equal? (normalize gi) (normalize "part")) (empty-sosofo))
((equal? (normalize gi) (normalize "toc")) (empty-sosofo))
(else
(with-mode footer-copyright-mode
(process-node-list (select-elements (children (current-node))
(normalize "articleinfo")))))))
(define (page-inner-footer gi)
(cond
((equal? (normalize gi) (normalize "dedication")) (empty-sosofo))
((equal? (normalize gi) (normalize "lot")) (empty-sosofo))
((equal? (normalize gi) (normalize "part")) (empty-sosofo))
((equal? (normalize gi) (normalize "toc")) (empty-sosofo))
(else
(with-mode footer-id-mode
(process-node-list (select-elements (children (current-node))
(normalize "articleinfo")))))))
(mode footer-id-mode
;; Prevent elements with PCDATA content
;; from being processed
(element title
(empty-sosofo))
(element subtitle
(empty-sosofo))
(element copyright
(empty-sosofo))
(element author
(empty-sosofo))
(element revnumber
(empty-sosofo))
(element date
(empty-sosofo))
(element revremark
(process-children-trim))
(default
(process-children-trim)))
(define (make-footer-rule)
(make rule
orientation: 'escapement
position-point-shift: 0.75cm
length: 5cm
layer: 1
line-thickness: 0.4pt))
;; make sure systemitem gets typesetted in typewriter font
(element systemitem ($mono-seq$))
(mode footer-copyright-mode
;; Prevent elements with PCDATA content
;; from being processed
(element title
(empty-sosofo))
(element subtitle
(empty-sosofo))
(element author
(empty-sosofo))
(element revnumber
(empty-sosofo))
(element date
(empty-sosofo))
(element revhistory
(empty-sosofo))
(element copyright
(let ((year (select-elements (children (current-node))
(normalize "year")))
(holder (select-elements (children (current-node))
(normalize "holder"))))
(make sequence
(make-footer-rule)
(literal "Copyright © ")
(process-node-list year)
(literal " ")
(process-node-list holder))))
(default
(process-children-trim)))
caspar-20170830/sgml/html.dsl 0000644 0001751 0001751 00000002200 13151515253 012561 0000000 0000000
]>
;; See dbparam.dsl for definitions of refentries
(define %section-autolabel% #t) ;; Sections are enumerated
(define %chapter-autolabel% #t) ;; Chapters are enumerated
(define nochunks #t) ;; Dont make multiple pages
(define rootchunk #t) ;; Do make a 'root' page
(define %use-id-as-filename% #t) ;; Use book id as filename
(define %html-ext% ".html") ;; give it a proper html extension
;; %generate-set-toc% and %generate-book-toc% are #t in dbparam.dsl
;; %generate-book-titlepage% and %generate-article-titlepage% are #t
;; %generate-part-toc-on-titlepage% is #t
;; it seems toc is generated, but not printed in nochunks mode
caspar-20170830/script/ 0000755 0001751 0001751 00000000000 13151515336 011543 5 0000000 0000000 caspar-20170830/script/Makefile.in 0000644 0001751 0001751 00000032240 13151515275 013533 0000000 0000000 # Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
@SET_MAKE@
VPATH = @srcdir@
am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
*) echo "am__make_running_with_option: internal error: invalid" \
"target option '$${target_option-}' specified" >&2; \
exit 1;; \
esac; \
has_opt=no; \
sane_makeflags=$$MAKEFLAGS; \
if $(am__is_gnu_make); then \
sane_makeflags=$$MFLAGS; \
else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
bs=\\; \
sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
| sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
esac; \
fi; \
skip_next=no; \
strip_trailopt () \
{ \
flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
}; \
for flg in $$sane_makeflags; do \
test $$skip_next = yes && { skip_next=no; continue; }; \
case $$flg in \
*=*|--*) continue;; \
-*I) strip_trailopt 'I'; skip_next=yes;; \
-*I?*) strip_trailopt 'I';; \
-*O) strip_trailopt 'O'; skip_next=yes;; \
-*O?*) strip_trailopt 'O';; \
-*l) strip_trailopt 'l'; skip_next=yes;; \
-*l?*) strip_trailopt 'l';; \
-[dEDm]) skip_next=yes;; \
-[JT]) skip_next=yes;; \
esac; \
case $$flg in \
*$$target_option*) has_opt=yes; break;; \
esac; \
done; \
test $$has_opt = yes
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
subdir = script
DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/VERSION.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
*) f=$$p;; \
esac;
am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
am__install_max = 40
am__nobase_strip_setup = \
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
am__nobase_strip = \
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
am__nobase_list = $(am__nobase_strip_setup); \
for p in $$list; do echo "$$p $$p"; done | \
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
if (++n[$$2] == $(am__install_max)) \
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
END { for (dir in files) print dir, files[dir] }'
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
am__uninstall_files_from_dir = { \
test -z "$$files" \
|| { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
|| { echo " ( cd '$$dir' && rm -f" $$files ")"; \
$(am__cd) "$$dir" && rm -f $$files; }; \
}
am__installdirs = "$(DESTDIR)$(bindir)"
SCRIPTS = $(bin_SCRIPTS)
AM_V_P = $(am__v_P_@AM_V@)
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
am__v_P_0 = false
am__v_P_1 = :
AM_V_GEN = $(am__v_GEN_@AM_V@)
am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
am__v_GEN_0 = @echo " GEN " $@;
am__v_GEN_1 =
AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
SOURCES =
DIST_SOURCES =
am__can_run_installinfo = \
case $$AM_UPDATE_INFO_DIR in \
n|no|NO) false;; \
*) (install-info --version) >/dev/null 2>&1;; \
esac
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRIP = @STRIP@
VERSION = @VERSION@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
am__leading_dot = @am__leading_dot@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build_alias = @build_alias@
builddir = @builddir@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
host_alias = @host_alias@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
bin_SCRIPTS = casparize csp_install csp_mkdircp csp_scp_keep_mode csp_sucp
EXTRA_DIST = $(bin_SCRIPTS)
all: all-am
.SUFFIXES:
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu script/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --gnu script/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
*) \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(top_srcdir)/configure: $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
install-binSCRIPTS: $(bin_SCRIPTS)
@$(NORMAL_INSTALL)
@list='$(bin_SCRIPTS)'; test -n "$(bindir)" || list=; \
if test -n "$$list"; then \
echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \
$(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \
fi; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
done | \
sed -e 'p;s,.*/,,;n' \
-e 'h;s|.*|.|' \
-e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
{ d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
if ($$2 == $$4) { files[d] = files[d] " " $$1; \
if (++n[d] == $(am__install_max)) { \
print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
else { print "f", d "/" $$4, $$1 } } \
END { for (d in files) print "f", d, files[d] }' | \
while read type dir files; do \
if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
test -z "$$files" || { \
echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(bindir)$$dir'"; \
$(INSTALL_SCRIPT) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \
} \
; done
uninstall-binSCRIPTS:
@$(NORMAL_UNINSTALL)
@list='$(bin_SCRIPTS)'; test -n "$(bindir)" || exit 0; \
files=`for p in $$list; do echo "$$p"; done | \
sed -e 's,.*/,,;$(transform)'`; \
dir='$(DESTDIR)$(bindir)'; $(am__uninstall_files_from_dir)
tags TAGS:
ctags CTAGS:
cscope cscopelist:
distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
dist_files=`for file in $$list; do echo $$file; done | \
sed -e "s|^$$srcdirstrip/||;t" \
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
check-am: all-am
check: check-am
all-am: Makefile $(SCRIPTS)
installdirs:
for dir in "$(DESTDIR)$(bindir)"; do \
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
done
install: install-am
install-exec: install-exec-am
install-data: install-data-am
uninstall: uninstall-am
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
installcheck: installcheck-am
install-strip:
if test -z '$(STRIP)'; then \
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
install; \
else \
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
fi
mostlyclean-generic:
clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
clean: clean-am
clean-am: clean-generic mostlyclean-am
distclean: distclean-am
-rm -f Makefile
distclean-am: clean-am distclean-generic
dvi: dvi-am
dvi-am:
html: html-am
html-am:
info: info-am
info-am:
install-data-am:
install-dvi: install-dvi-am
install-dvi-am:
install-exec-am: install-binSCRIPTS
install-html: install-html-am
install-html-am:
install-info: install-info-am
install-info-am:
install-man:
install-pdf: install-pdf-am
install-pdf-am:
install-ps: install-ps-am
install-ps-am:
installcheck-am:
maintainer-clean: maintainer-clean-am
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-am
mostlyclean-am: mostlyclean-generic
pdf: pdf-am
pdf-am:
ps: ps-am
ps-am:
uninstall-am: uninstall-binSCRIPTS
.MAKE: install-am install-strip
.PHONY: all all-am check check-am clean clean-generic cscopelist-am \
ctags-am distclean distclean-generic distdir dvi dvi-am html \
html-am info info-am install install-am install-binSCRIPTS \
install-data install-data-am install-dvi install-dvi-am \
install-exec install-exec-am install-html install-html-am \
install-info install-info-am install-man install-pdf \
install-pdf-am install-ps install-ps-am install-strip \
installcheck installcheck-am installdirs maintainer-clean \
maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
pdf-am ps ps-am tags-am uninstall uninstall-am \
uninstall-binSCRIPTS
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
caspar-20170830/script/Makefile.am 0000644 0001751 0001751 00000000242 13151515253 013513 0000000 0000000 ## Process this file with automake to produce Makefile.in
bin_SCRIPTS = casparize csp_install csp_mkdircp csp_scp_keep_mode csp_sucp
EXTRA_DIST = $(bin_SCRIPTS)
caspar-20170830/script/casparize 0000755 0001751 0001751 00000010160 13151515253 013366 0000000 0000000 #!/bin/bash
# This file is maintained at http://git.mdcc.cx/caspar
# casparize - create Makefile-populated directories
# Copyright (C) 2009 Jeroen Hoppenbrouwers
#
# 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 3 of the License, 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, see .
#
# Creates a directory in working directory named like the last path
# element of the parameter, and creates a Makefile in the new directory
# containing standard caspar(7) setup that refers to the parameter path.
# If relevant, also copies the original config file into the new dir.
# Is reasonably picky about path names, tries to avoid common errors.
#
# V1.3 2009-07-25
# Abort on first error.
set -e
if [ -z "$1" ]; then
echo "Usage:"
echo " casparize /path/to/config/dir"
echo " Creates dir in working directory and"
echo " sets up caspar(7) Makefile in it."
echo " casparize /path/to/config/dir/file"
echo " Creates dir in working directory and"
echo " sets up caspar(7) Makefile in it,"
echo " then copies the config file into it."
echo ""
echo "Typical example:"
echo " \$ cd /etc"
echo " \$ casparize /etc/postfix/main.cf"
echo ""
echo "Will never overwrite anything that already exists."
exit 1
fi
# Complain if config path is not absolute.
if [ "${1:0:1}" != "/" ]; then
echo "ERROR: config path must be absolute".
exit 1
fi
# If given config path is a file, split it off and continue with just the
# config directory (until at the end where the file comes in).
if [ -d "$1" ]; then
# Target is a directory; just continue.
conffile=""
confdir=$1
else
# Target is a file; split off.
conffile=`basename $1`
confdir=`dirname $1`
fi
# Two options are covered:
# 1. New directory required, create in working directory.
# 2. New dir and file required, create dir in working directory and file
# in the newly created directory.
# What is NOT covered is "create file in working directory" because we
# assume that it is rare to not have the working directory set up with a
# Makefile. But it could be done.
# Complain if working directory basename is not equal to one-but-last
# element of the given config directory path. This catches most "oops"
# cases.
here=`pwd`
here=`basename $here`
target=`dirname $confdir`
target=`basename $target`
if [ "$here" != "$target" ]; then
echo "ERROR: Check config directory versus working directory."
exit 1
fi
# Find the include/install.mk file by looking up the tree from working dir.
scandir=`pwd`
uplevels=""
until [ -a "${uplevels}include/install.mk" ]; do
scandir=`dirname $scandir`
if [ "$scandir" = "/" ]; then
echo "ERROR: could not find include/install.mk anywhere up the path."
exit 1
fi
uplevels+="../"
done
# Directory to be created in working directory.
base=`basename $confdir`
# If the directory to be created already exists, don't complain.
# It may be that caspar(1) is used to create the Makefile only.
mkdir -pv $base
if [ -e "${base}/Makefile" ]; then
# Complain if the Makefile already exists.
echo "WARNING: $base/Makefile already exists; not overwriting."
else
# Create the Makefile.
echo "csp_DIR = $confdir" > ${base}/Makefile
echo "include ${uplevels}../include/install.mk" >> ${base}/Makefile
echo "casparize: created file \`$base/Makefile'"
fi
# If required, create the configuration file as well (copy over).
if [ -n "${conffile}" ]; then
if [ -e "${base}/${conffile}" ]; then
echo "WARNING: ${base}/${conffile} already exists; not overwriting."
else
cp ${confdir}/${conffile} $base
echo "casparize: created file \`${base}/${conffile}'"
fi
fi
exit 0
caspar-20170830/script/csp_install 0000755 0001751 0001751 00000001274 13151515253 013726 0000000 0000000 #!/bin/sh
# This file is maintained at http://git.mdcc.cx/caspar
# csp_install - wrapper for install(1), to be used in caspar-ized Makefiles
#
# usage: csp_install
#
# honors optionally set environment variable csp_INSTALL_OPTIONS.
# use e.g.
# export csp_INSTALL_OPTIONS='--owner=www-data --group=www-data'
#
# Generally, this script is to be used by stating e.g.
#
# csp_UHOST = dummy
# csp_PUSH = $(csp_install_FUNC)
# csp_DIR = /etc/
# include caspar/mk/caspar.mk
#
# in a Makefile
: ${csp_INSTALL_MODE:=u=rw,go=r}
install --directory $1
exec install --backup=off --preserve-timestamps --mode=$csp_INSTALL_MODE --no-target-directory $csp_INSTALL_OPTIONS $2 $1/$2
caspar-20170830/script/csp_mkdircp 0000755 0001751 0001751 00000000216 13151515253 013704 0000000 0000000 #! /bin/sh
# This file is maintained at http://git.mdcc.cx/caspar
set -e
dir=$1
shift
mkdir -p "$DESTDIR$dir"
exec cp "$@" "$DESTDIR$dir"
caspar-20170830/script/csp_scp_keep_mode 0000755 0001751 0001751 00000001705 13151515253 015054 0000000 0000000 #!/bin/sh
# This file is maintained at http://git.mdcc.cx/caspar
# csp_scp_keep_mode - use ssh to copy a file, keeping its file permission mode
# based upon an idea of Wessel Dankers
# user joe pushed file bar to host murphy, in directory /foo/. on murphy,
# /foo/bar is owned by joe:joe. Now, ann wants to change murphy:/foo/bar. She
# however lacks permissions. Using a new group "hackers", and performing chmod
# g+s on murphy:/foo/ fixes this partially: the files now belong to the right
# group "hackers". However, a mode g+w on a file is generally _not_ preserved
# when scp-ing a new version of the file.
#
# Zorg dat op alle desktops het scriptje "csp_install_origal_mode" ergens
# in het $PATH van de gebruikers staat.
# Voorzie de include/install.mk verder van:
#
# csp_scp_keep_mode_FUNC = csp_scp_keep_mode $(1) $(2) $(3)
# csp_PUSH = $(csp_scp_keep_mode_FUNC)
#
: ${csp_SSH:=ssh}
exec $csp_SSH $1 't=`mktemp` && cat >$t && mv $t $2/$3' < $3
caspar-20170830/script/csp_sucp 0000755 0001751 0001751 00000001710 13151515253 013225 0000000 0000000 #!/bin/sh
# This file is maintained at http://git.mdcc.cx/caspar
#
# csp_sucp - mix scp with sudo
#
# usage:
# csp_sucp [user@]host dir file
#
# examples:
# csp_sucp rms@bilbo /etc file
# csp_sucp monty-python trailer.txt commit
#
# warning:
# csp_sucp won't prevent the given password from being echoed!
#
if test -z "$3"
then
echo "usage: csp_sucp [user@]host dir file [file ...]"
exit 1
fi
# command line argument overrules environment variable
test -n "$CSP_SUCP_USER" && opt_u="-u $CSP_SUCP_USER"
# first make sure our sudo-timestamp is fresh
ssh -t $1 sudo -v
# now run sudo: we won't be prompted for a password; and
# can use stdin for our data
test -n "$CSP_DEBUG" && echo $1 $opt_u $2 $3
#exec ssh $1 "sudo $opt_u sh -c \"cat - > $2/$3\"" < $3
host=$1; shift
dir=$1; shift
# files now in $@
test -n "$CSP_DEBUG" && echo exec tar c "$@" \| ssh -T $host sudo -n $opt_u tar xC $dir
exec tar c "$@" | ssh -T $host sudo -n $opt_u tar xC $dir