## Process this file with automake to produce Makefile.in
# Package: am-utils
# Level: Makefile for amd/ directory
# Author: Erez Zadok
# no need for libaminfo to be yet another dynamic library
noinst_LIBRARIES = libaminfo.a
sbin_PROGRAMS = amd sun2amd
# man pages
man_MANS = amd.8 sun2amd.8
YLWRAP= $(top_srcdir)/ylwrap.amd
# test scripts
TESTS = test1.sh
# headers this depends on, not to be installed
noinst_HEADERS = amd.h sun_map.h
# sources which get auto-built (from yacc/lex)
BUILT_SOURCES = \
conf_parse.c conf_parse.h conf_tok.c \
sun_map_parse.c sun_map_parse.h sun_map_tok.c
AM_YFLAGS = -d
##############################################################################
# *.y must be listed before *.l, because of a bug in automake-1.2
# which will not generate the .h needs for the lex file from the yacc file.
# I took out the conf .y/.l files b/c of bad interaction between bsd44 make
# and automake-1.2 rules.
libaminfo_a_SOURCES = \
sun_map_parse.y \
sun_map_tok.l \
sun_map.c
# the complete list of all optional sources for libaminfo
EXTRA_libaminfo_a_SOURCES = \
info_file.c \
info_exec.c \
info_hesiod.c \
info_ldap.c \
info_ndbm.c \
info_nis.c \
info_nisplus.c \
info_passwd.c \
info_sun.c \
info_union.c
# AMD_INFO_OBJS: a list of info_*.o objects added, depending on which map
# types this system supports.
EXTRA_libaminfo_a_OBJECTS = @AMD_INFO_OBJS@
libaminfo_a_LIBADD = @AMD_INFO_OBJS@
libaminfo_a_DEPENDENCIES = @AMD_INFO_OBJS@
##############################################################################
# sources needed: note .y and .l files have to be first
# get_args.c is handled separately
amd_SOURCES = \
conf_parse.y \
conf_tok.l \
\
am_ops.c \
amd.c \
amfs_auto.c \
amfs_direct.c \
amfs_error.c \
amfs_generic.c \
amfs_host.c \
amfs_link.c \
amfs_linkx.c \
amfs_nfsl.c \
amfs_nfsx.c \
amfs_program.c \
amfs_root.c \
amfs_toplvl.c \
amfs_union.c \
amq_subr.c \
amq_svc.c \
autil.c \
clock.c \
conf.c \
map.c \
mapc.c \
mntfs.c \
nfs_prot_svc.c \
nfs_start.c \
nfs_subr.c \
opts.c \
readdir.c \
restart.c \
rpc_fwd.c \
sched.c \
srvr_amfs_auto.c \
srvr_nfs.c
# the complete list of all optional sources for amd
EXTRA_amd_SOURCES = \
ops_cachefs.c \
ops_cdfs.c \
ops_efs.c \
ops_ext.c \
ops_lofs.c \
ops_lustre.c \
ops_mfs.c \
ops_nfs.c \
ops_nfs3.c \
ops_nfs4.c \
ops_nullfs.c \
ops_pcfs.c \
ops_tfs.c \
ops_tmpfs.c \
ops_udf.c \
ops_ufs.c \
ops_umapfs.c \
ops_unionfs.c \
ops_xfs.c \
\
get_args.c
# AMD_FS_OBJS: a list of ops_*.o objects added, depending on which
# filesystem types this system supports.
EXTRA_amd_OBJECTS = @AMD_FS_OBJS@
amd_LDADD = $(EXTRA_amd_OBJECTS) get_args.o libaminfo.a ../libamu/libamu.la
##############################################################################
sun2amd_SOURCES = \
sun2amd.c
sun2amd_LDADD = libaminfo.a ../libamu/libamu.la
##############################################################################
# must manually add f/lex library to LIBS, and not to LDADD.
##LIBS = @LIBS@ @LEXLIB@ @WRAPLIB@
# f/lex libraries are incomatible with multiple scanners: don't include
LIBS = @LIBS@ @WRAPLIB@
# additional files to distribute and clean
EXTRA_DIST = ops_TEMPLATE.c $(man_MANS) $(TESTS)
CLEANFILES = $(BUILT_SOURCES)
DISTCLEANFILES = build_version.h ops_autofs.c
# do not distribute files that should be generated by lex/yacc locally
dist-hook:
(cd $(distdir) && rm -f $(BUILT_SOURCES))
AM_CPPFLAGS = -I$(top_srcdir)/include
# allow users to add their own flags via "configure --enable-am-flags=ARG"
AMU_CFLAGS = @AMU_CFLAGS@
AM_CFLAGS = $(AMU_CFLAGS)
# dependencies
$(PROGRAMS): $(LDADD)
get_args.o: build_version.h
$(amd_OBJECTS) $(EXTRA_amd_OBJECTS) $(sun2amd_OBJECTS) $(libaminfo_a_OBJECTS) $(EXTRA_libaminfo_a_OBJECTS): \
../config.h \
../aux_conf.h \
$(top_srcdir)/include/am_compat.h \
$(top_srcdir)/include/am_defs.h \
$(top_srcdir)/include/am_utils.h \
$(top_srcdir)/include/am_xdr_func.h \
$(top_srcdir)/include/amq_defs.h \
@AMU_NFS_PROT_HEADER@ \
@AMU_AUTOFS_PROT_HEADER@ \
$(noinst_HEADERS)
# auto-generate build number
build_version.h: $(amd_OBJECTS) $(EXTRA_amd_OBJECTS) $(libaminfo_a_OBJECTS) $(EXTRA_libaminfo_a_OBJECTS) get_args.c
$(top_srcdir)/m4/update_build_version