--- /dev/null
+#
+# Copyright (c) 1998,1999,2000
+# Traakan, Inc., Los Altos, CA
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions
+# are met:
+# 1. Redistributions of source code must retain the above copyright
+# notice unmodified, this list of conditions, and the following
+# disclaimer.
+# 2. Redistributions in binary form must reproduce the above copyright
+# notice, this list of conditions and the following disclaimer in the
+# documentation and/or other materials provided with the distribution.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+# SUCH DAMAGE.
+#
+
+#
+# Project: NDMJOB
+# Ident: $Id: $
+#
+# Description
+#
+# This illustrates the strata (layers) of the
+# NDMJOB/NDMJOBLIB software, the scope of key
+# header (.h) files, and the source files
+# constituting each layer.
+#
+# - - - - - +---------------------------------------+
+# ^ ^ ^ ^ ndmjob.h | NDMJOB Command ndmjob_*.c |
+# | | | | - +---------------------------------------+
+# | | | | NDMJOBLIB API "job"
+# | | | | +---------------------------------------+ \
+# | | | | | Rules (NDMJLR) ndmjr_*.[ch] | \
+# | | | ndmagents.h | Agents (NDMJLA) ndma_*.c | |
+# | | | - +---------------------------------------+ |
+# | | ndmlib.h | Library (NDMJLL) ndml_*.c | |
+# | | - +---------------------------------------+ |
+# | ndmprotocol.h | Protocol (NDMJLP) ndmp*.[chx] | NDMJOBLIB
+# | - +---------------------------------------+ |
+# | | SMC (NDMJLS) smc*.[ch] | |
+# | | MD5 (NDMJL5) md5*.[ch] | |
+# | +---------------------------------------+ |
+# ndmos.h | OS intf (NDMJLO) ndmos*.[ch] | /
+# - +---------------------------------------+ /
+#
+
+
+#NDMOS_OPTIONS = -DNDMOS_OPTION_NO_CONTROL_AGENT
+#NDMOS_OPTIONS = -DNDMOS_OPTION_NO_DATA_AGENT
+#NDMOS_OPTIONS = -DNDMOS_OPTION_NO_TAPE_AGENT
+#NDMOS_OPTIONS = -DNDMOS_OPTION_NO_ROBOT_AGENT
+#NDMOS_OPTIONS = -DNDMOS_OPTION_NO_NDMP2
+#NDMOS_OPTIONS = -DNDMOS_OPTION_NO_NDMP3
+#NDMOS_OPTIONS = -DNDMOS_OPTION_NO_NDMP4
+
+include $(top_srcdir)/config/automake/vars.am
+include $(top_srcdir)/config/automake/installperms.am
+include $(top_srcdir)/config/automake/precompile.am
+
+INCLUDES = -I$(top_builddir)/common-src \
+ -I$(top_srcdir)/common-src \
+ -I$(top_srcdir)/gnulib
+
+# TODO: use existing md5 facility? (openssl?)
+
+# TODO: tests!
+
+# add the Amanda version to the ndmjoblib version info
+AM_CFLAGS = -DNDMOS_CONST_NDMJOBLIB_REVISION='"amanda-$(VERSION)"'
+# note that this directory is compiled *without* the usual Amanda warnings,
+# because the rpcgen-generated code (including header files) generates copious
+# warnings and cannot be changed, and cannot be ignored in older versions of
+# gcc.
+
+##
+## libndmjob.la and libndmlib.la
+##
+
+# Divide the library up into the library side and down (libndmlib.la),
+# and the full set of rules, agents, and so on required to build ndmjob
+# (libndmjob.la).
+
+amlib_LTLIBRARIES = \
+ libndmlib.la \
+ libndmjob.la
+
+libndmjla = \
+ ndma_comm_job.c \
+ ndma_comm_session.c \
+ ndma_comm_dispatch.c \
+ ndma_comm_subr.c \
+ ndma_control.c \
+ ndma_cops_backreco.c \
+ ndma_cops_labels.c \
+ ndma_cops_query.c \
+ ndma_cops_robot.c \
+ ndma_ctrl_calls.c \
+ ndma_ctrl_conn.c \
+ ndma_ctrl_media.c \
+ ndma_ctrl_robot.c \
+ ndma_ctst_tape.c \
+ ndma_ctst_mover.c \
+ ndma_ctst_data.c \
+ ndma_ctst_subr.c \
+ ndma_data.c \
+ ndma_data_fh.c \
+ ndma_data_pfe.c \
+ ndma_image_stream.c \
+ ndma_noti_calls.c \
+ ndma_tape.c \
+ ndma_robot.c \
+ ndma_robot_simulator.c \
+ wraplib.c
+
+libndmjlr = \
+ ndmjr_none.c
+
+libndmjll = \
+ ndml_agent.c \
+ ndml_bstf.c \
+ ndml_chan.c \
+ ndml_config.c \
+ ndml_conn.c \
+ ndml_cstr.c \
+ ndml_log.c \
+ ndml_md5.c \
+ ndml_fhdb.c \
+ ndml_fhh.c \
+ ndml_media.c \
+ ndml_nmb.c \
+ ndml_scsi.c \
+ ndml_stzf.c \
+ ndml_util.c
+
+libndmjlp = \
+ ndmprotocol.c \
+ ndmp_translate.c \
+ ndmp2_translate.c ndmp3_translate.c ndmp4_translate.c \
+ ndmp0_enum_strs.c ndmp0_pp.c ndmp0_xdr.c ndmp0_xmt.c \
+ ndmp2_enum_strs.c ndmp2_pp.c ndmp2_xdr.c ndmp2_xmt.c \
+ ndmp3_enum_strs.c ndmp3_pp.c ndmp3_xdr.c ndmp3_xmt.c \
+ ndmp4_enum_strs.c ndmp4_pp.c ndmp4_xdr.c ndmp4_xmt.c \
+ ndmp9_enum_strs.c ndmp9_xdr.c ndmp9_xmt.c
+
+libndmjls = \
+ smc_api.c \
+ smc_parse.c \
+ smc_pp.c
+
+libndmjl5 = \
+ md5c.c
+
+libndmjlo = \
+ ndmos.c \
+ ndmos_common.c
+
+libndmlib_la_LDFLAGS = -release $(VERSION) $(AS_NEEDED_FLAGS)
+libndmlib_la_SOURCES = \
+ $(libndmjll) \
+ $(libndmjlp) \
+ $(libndmjls) \
+ $(libndmjl5) \
+ $(libndmjlo) \
+ ndmpconnobj.c
+
+libndmjob_la_SOURCES = \
+ $(libndmjla) \
+ $(libndmjlr)
+
+libndmjob_la_LDFLAGS = -release $(VERSION) $(AS_NEEDED_FLAGS)
+libndmjob_la_LIBADD = libndmlib.la
+
+##
+## ndmjob -- used for testing and by applications
+##
+
+amlibexec_PROGRAMS = amndmjob ndmjob
+
+ndmjob_SOURCES = ndmjob_main.c \
+ ndmjob_args.c \
+ ndmjob_job.c \
+ ndmjob_rules.c \
+ ndmjob_main_util.c \
+ ndma_tape_simulator.c
+
+
+amndmjob_SOURCES = amndmjob_main.c \
+ ndmjob_args.c \
+ ndmjob_job.c \
+ ndmjob_rules.c \
+ ndmjob_main_util.c \
+ amndma_tape_simulator.c
+
+ndmjob_LDADD = libndmjob.la \
+ ../common-src/libamanda.la
+
+amndmjob_LDADD = libndmjob.la \
+ ../common-src/libamanda.la
+
+ndmp0.h ndmp0_xdr.c : ndmp0.x
+ $(RPCGEN) ndmp0.x
+
+ndmp2.h ndmp2_xdr.c : ndmp2.x
+ $(RPCGEN) ndmp2.x
+
+ndmp3.h ndmp3_xdr.c : ndmp3.x
+ $(RPCGEN) ndmp3.x
+
+ndmp4.h ndmp4_xdr.c : ndmp4.x
+ $(RPCGEN) ndmp4.x
+
+ndmp9.h ndmp9_xdr.c : ndmp9.x
+ $(RPCGEN) ndmp9.x
+
+# cause these files to be built before those that might depend on them
+BUILT_SOURCES += \
+ ndmp0.h \
+ ndmp0_xdr.c \
+ ndmp2.h \
+ ndmp2_xdr.c \
+ ndmp3.h \
+ ndmp3_xdr.c \
+ ndmp4.h \
+ ndmp4_xdr.c \
+ ndmp9.h \
+ ndmp9_xdr.c
+
+noinst_HEADERS = \
+ md5.h ndmp0_enum_strs.h ndmp3.x ndmprotocol.h \
+ ndmagents.h ndmp0.h ndmp4_enum_strs.h ndmp_translate.h \
+ ndmjob.h ndmp0.x ndmp4.h scsiconst.h \
+ ndmjr_none.h ndmp2_enum_strs.h ndmp4_translate.h smc.h \
+ ndmlib.h ndmp2.h ndmp4.x smc_priv.h \
+ ndmp2_translate.h ndmp9_enum_strs.h smc_raw.h \
+ ndmos.h ndmp2.x ndmp9.h \
+ ndmp3_enum_strs.h ndmp9.x \
+ ndmp3.h ndmp_ammend.h wraplib.h \
+ ndmp3_translate.h ndmp_msg_buf.h \
+ ndmos_glib.h \
+ ndmpconnobj.h
+
+EXTRA_DIST += \
+ ndmos_glib.c \
+ ndmos_common.c \
+ README \
+ ShakeOut.sh \
+ ThingsToTry \
+ idx_dump.pl