1#
2# local (scripts) directory Makefile
3#
4VPATH		= @srcdir@
5
6#
7# stuff to install
8#
9OTHERINSTALL=localinstall
10OTHERUNINSTALL=localuninstall
11
12#
13# local info
14#
15SNMPCONFPATH=@SNMPCONFPATH@
16PERSISTENT_DIRECTORY=@PERSISTENT_DIRECTORY@
17PERLSCRIPTS=snmpcheck tkmib mib2c fixproc ipf-mod.pl snmpconf traptoemail snmp-bridge-mib net-snmp-cert checkbandwidth
18SHELLSCRIPTS=mib2c-update
19SCRIPTSMADEFORPERL=snmpcheck.made tkmib.made mib2c.made fixproc.made \
20	ipf-mod.pl.made snmpconf.made traptoemail.made snmp-bridge-mib.made \
21	net-snmp-cert.made checkbandwidth.made
22DATASRCS=mib2c.conf mib2c.iterate.conf mib2c.iterate_access.conf \
23	mib2c.create-dataset.conf mib2c.mfd.conf \
24	mib2c.array-user.conf mib2c.column_enums.conf \
25	mib2c.column_defines.conf mib2c.column_storage.conf \
26	mib2c.old-api.conf mib2c.scalar.conf \
27	mib2c.check_values.conf mib2c.check_values_local.conf \
28	mib2c.access_functions.conf mib2c.notify.conf \
29	mib2c.int_watch.conf mib2c.genhtml.conf mib2c.org-mode.conf \
30	mib2c.raw-table.conf mib2c.table_data.conf \
31	mib2c.container.conf mib2c.perl.conf
32MIB2CINSTALLDIR=$(snmplibdir)/mib2c-data
33MIB2CDATASRC=mib2c-conf.d
34MIB2CFILES=default-mfd-top.m2c details-enums.m2i details-node.m2i \
35	details-table.m2i generic-ctx-copy.m2i generic-ctx-get.m2i \
36	generic-ctx-set.m2i generic-data-allocate.m2i generic-data-context.m2i \
37	generic-get-char.m2i generic-get-decl-bot.m2i generic-get-decl.m2i \
38	generic-get-long.m2i generic-get-oid.m2i generic-get-U64.m2i \
39	generic-header-bottom.m2i \
40	generic-header-top.m2i generic-source-includes.m2i \
41	generic-table-constants.m2c generic-table-enums.m2c \
42	generic-table-indexes-from-oid.m2i generic-table-indexes-set.m2i \
43	generic-table-indexes-to-oid.m2i \
44	generic-table-indexes-varbind-setup.m2i generic-table-indexes.m2i \
45	generic-table-oids.m2c generic-value-map-func.m2i \
46	generic-value-map-reverse.m2i generic-value-map.m2i \
47	m2c-internal-warning.m2i \
48	m2c_setup_enum.m2i m2c_setup_node.m2i m2c_setup_table.m2i \
49	m2c_table_save_defaults.m2i \
50	mfd-access-container-cached-defines.m2i \
51	mfd-access-unsorted-external-defines.m2i \
52	mfd-data-access.m2c mfd-data-get.m2c mfd-data-set.m2c \
53	mfd-doxygen.m2c mfd-interactive-setup.m2c mfd-interface.m2c \
54	mfd-makefile.m2m mfd-readme.m2c mfd-top.m2c \
55	mfd-persistence.m2i \
56	node-get.m2i node-set.m2i node-storage.m2i \
57	node-validate.m2i node-varbind-validate.m2i \
58	parent-dependencies.m2i parent-set.m2i \
59	subagent.m2c \
60	syntax-COUNTER64-get.m2i syntax-DateAndTime-get.m2d \
61	syntax-DateAndTime-get.m2i syntax-DateAndTime-readme.m2i \
62	syntax-InetAddress-get.m2i syntax-InetAddress-set.m2i \
63	syntax-InetAddressType-get.m2i syntax-InetAddressType-set.m2i \
64	syntax-RowStatus-dependencies.m2i syntax-RowStatus-get.m2i \
65	syntax-RowStatus-varbind-validate.m2i \
66	syntax-StorageType-dependencies.m2i \
67	syntax-TestAndIncr-get.m2i
68
69CONFINSTALLDIR=$(snmplibdir)/snmpconf-data
70CONFDATASRC=snmpconf.dir
71CONFDIRS=snmp-data snmpd-data snmptrapd-data
72CONFFILES=snmpd-data/system snmpd-data/acl snmpd-data/trapsinks \
73	snmpd-data/monitor snmpd-data/extending snmpd-data/operation \
74	snmpd-data/basic_setup snmpd-data/snmpconf-config \
75	snmp-data/authopts snmp-data/debugging snmp-data/output snmp-data/mibs \
76	snmp-data/snmpconf-config \
77	snmptrapd-data/formatting snmptrapd-data/traphandle \
78	snmptrapd-data/authentication snmptrapd-data/logging snmptrapd-data/runtime \
79	snmptrapd-data/snmpconf-config
80
81OTHERCLEANTARGETS=snmpcheck $(SCRIPTSMADEFORPERL)
82
83all: $(SCRIPTSMADEFORPERL) standardall
84
85snmpcheck: $(srcdir)/snmpcheck.def ../sedscript
86	$(SED) -f ../sedscript $(srcdir)/snmpcheck.def > snmpcheck
87
88snmpcheck.made: snmpcheck
89	if test "x$(PERL)" != "x" ; then \
90	  $(PERL) -p -e 's%^#!.*/perl.*%#!$(PERL)%' snmpcheck > snmpcheck.made ; \
91	else \
92	  touch snmpcheck.made ; \
93        fi
94
95tkmib.made: $(srcdir)/tkmib
96	if test "x$(PERL)" != "x" ; then \
97	  $(PERL) -p -e 's%^#!.*/perl.*%#!$(PERL)%' ${srcdir}/tkmib > tkmib.made; \
98	else \
99	  touch tkmib.made; \
100        fi
101
102mib2c.made: $(srcdir)/mib2c
103	if test "x$(PERL)" != "x" ; then \
104	  $(PERL) -p -e 's%^#!.*/perl.*%#!$(PERL)%;s#/usr/local/share/snmp#$(snmplibdir)#;' ${srcdir}/mib2c > mib2c.made; \
105	else \
106	  touch mib2c.made; \
107        fi
108
109net-snmp-cert.made: $(srcdir)/net-snmp-cert
110	if test "x$(PERL)" != "x" ; then \
111	  $(PERL) -p -e 's%^#!.*/perl.*%#!$(PERL)%;s#/usr/local/share/snmp#$(snmplibdir)#;' ${srcdir}/net-snmp-cert > net-snmp-cert.made; \
112	else \
113	  touch net-snmp-cert.made; \
114        fi
115
116
117ipf-mod.pl.made: $(srcdir)/ipf-mod.pl
118	if test "x$(PERL)" != "x" ; then \
119	  $(PERL) -p -e 's%^#!.*/perl.*%#!$(PERL)%' ${srcdir}/ipf-mod.pl > ipf-mod.pl.made; \
120	else \
121	  touch ipf-mod.pl.made; \
122        fi
123
124fixproc.made: $(srcdir)/fixproc
125	if test "x$(PERL)" != "x" ; then \
126	  $(PERL) -p -e 's%^#!.*/perl.*%#!$(PERL)%' ${srcdir}/fixproc > fixproc.made; \
127	else \
128	  touch fixproc.made; \
129        fi
130
131snmpconf.made: snmpconf
132	if test "x$(PERL)" != "x" ; then \
133	  $(PERL) -p -e 's%^#!.*/perl.*%#!$(PERL)%; s#/usr/local/share#$(datadir)#g; s#/usr/local/etc/snmp#$(SNMPCONFPATH)#g; s#/var/net-snmp#$(PERSISTENT_DIRECTORY)#g' snmpconf > snmpconf.made; \
134	else \
135	  touch snmpconf.made; \
136        fi
137
138traptoemail.made: $(srcdir)/traptoemail
139	if test "x$(PERL)" != "x" ; then \
140	  $(PERL) -p -e 's%^#!.*/perl.*%#!$(PERL)%; s#/usr/local/share#$(datadir)#g; s#/usr/local/etc/snmp#$(TRAPTOEMAILPATH)#g' ${srcdir}/traptoemail > traptoemail.made; \
141	else \
142	  touch traptoemail.made; \
143        fi
144
145snmp-bridge-mib.made: $(srcdir)/snmp-bridge-mib
146	if test "x$(PERL)" != "x" ; then \
147	  $(PERL) -p -e 's%^#!.*/perl.*%#!$(PERL)%' ${srcdir}/snmp-bridge-mib > snmp-bridge-mib.made; \
148	else \
149	  touch snmp-bridge-mib.made; \
150        fi
151
152checkbandwidth.made: checkbandwidth
153	if test "x$(PERL)" != "x" ; then \
154	  $(PERL) -p -e 's%^#!.*/perl.*%#!$(PERL)%' checkbandwidth > checkbandwidth.made ; \
155	else \
156	  touch checkbandwidth.made ; \
157	fi
158
159localinstall: $(SCRIPTSMADEFORPERL)
160	@if test "x$(PERL)" != "x" ; then \
161	  for i in $(PERLSCRIPTS) ; do $(INSTALL) $$i.made $(INSTALL_PREFIX)$(bindir)/$$i ; echo "install:  installed $$i in $(INSTALL_PREFIX)$(bindir)" ; done ; \
162	  for i in $(SHELLSCRIPTS) ; do $(INSTALL) $(srcdir)/$$i $(INSTALL_PREFIX)$(bindir)/$$i ; echo "install:  installed $$i in $(INSTALL_PREFIX)$(bindir)" ; done ; \
163	  $(SHELL) $(srcdir)/../mkinstalldirs $(INSTALL_PREFIX)$(snmplibdir) ; \
164	  for i in $(DATASRCS) ; do $(INSTALL_DATA) $(srcdir)/$$i $(INSTALL_PREFIX)$(snmplibdir)/$$i ; echo "install:  installed $$i in $(INSTALL_PREFIX)$(snmplibdir)" ; done ; \
165	  for i in $(CONFDIRS); do $(SHELL) $(srcdir)/../mkinstalldirs $(INSTALL_PREFIX)$(CONFINSTALLDIR)/$$i ; done ; \
166	  for i in $(CONFFILES); do $(INSTALL_DATA) $(srcdir)/$(CONFDATASRC)/$$i $(INSTALL_PREFIX)$(CONFINSTALLDIR)/$$i; echo "install:  installed $$i in $(INSTALL_PREFIX)$(CONFINSTALLDIR)"; done ; \
167	  $(SHELL) $(srcdir)/../mkinstalldirs $(INSTALL_PREFIX)$(MIB2CINSTALLDIR) ; \
168	  for i in $(MIB2CFILES); do $(INSTALL_DATA) $(srcdir)/$(MIB2CDATASRC)/$$i $(INSTALL_PREFIX)$(MIB2CINSTALLDIR)/$$i; echo "install:  installed $$i in $(INSTALL_PREFIX)$(MIB2CINSTALLDIR)"; done \
169	fi
170
171localuninstall:
172	@if test "x$(PERL)" != "x" ; then \
173	  for i in $(PERLSCRIPTS) ; do rm -f $(INSTALL_PREFIX)$(bindir)/$$i ; echo "removed $$i from $(INSTALL_PREFIX)$(bindir)" ; done ; \
174	  for i in $(SHELLSCRIPTS) ; do rm -f $(INSTALL_PREFIX)$(bindir)/$$i ; echo "removed $$i from $(INSTALL_PREFIX)$(bindir)" ; done ; \
175	  for i in $(DATASRCS) ; do rm -f $(INSTALL_PREFIX)$(snmplibdir)/$$i ; echo "removed $$i from $(INSTALL_PREFIX)$(snmplibdir)" ; done ; \
176	  for i in $(CONFFILES); do rm -f $(INSTALL_PREFIX)$(CONFINSTALLDIR)/$$i; echo "removed $$i from $(INSTALL_PREFIX)$(CONFINSTALLDIR)"; done ; \
177	  for i in $(MIB2CFILES); do rm -f $(INSTALL_PREFIX)$(MIB2CINSTALLDIR)/$$i; echo "removed $$i from $(INSTALL_PREFIX)$(MIB2CINSTALLDIR)"; done \
178	fi
179