| |
| # |
| # standard target definitions. Set appropriate variables to make use of them. |
| # |
| # note: the strange use of the "it" variable is for shell parsing when |
| # there is no targets to install for that rule. |
| # |
| |
| # the standard items to build: libraries, bins, and sbins |
| STANDARDTARGETS =$(INSTALLLIBS) $(INSTALLBINPROGS) $(INSTALLSBINPROGS) |
| STANDARDCLEANTARGETS=$(INSTALLLIBS) $(INSTALLPOSTLIBS) $(INSTALLBINPROGS) $(INSTALLSBINPROGS) $(INSTALLUCDLIBS) |
| |
| standardall: subdirs $(STANDARDTARGETS) |
| |
| objs: ${OBJS} ${LOBJS} |
| |
| # features require that subdirs be made *first* to get dependency |
| # collection processed in the right order |
| .PHONY: features ftobjs ftsubdirs |
| features: $(FTOTHERTARGS) ftsubdirs ftobjs $(FEATUREFILE) |
| ftobjs: $(FTOBJS) |
| $(FEATUREFILE): $(FTOBJS) $(top_builddir)/include/net-snmp/feature-details.h |
| cat $(FTOBJS) > $(FEATUREFILE).in |
| $(FEATUREPROCESS) $(FEATUREFILE) $(top_builddir)/include/net-snmp/feature-details.h @FEATURE_REMOVE_FLAGS@ @FEATURE_ADD_FLAGS@ |
| ftsubdirs: |
| @if test "$(FTSUBDIRS)" != ""; then \ |
| SUBDIRS="$(FTSUBDIRS)" ; \ |
| else \ |
| SUBDIRS="$(SUBDIRS)" ; \ |
| fi ; \ |
| if test "$$SUBDIRS" != ""; then \ |
| it="$$SUBDIRS" ; \ |
| for i in $$it ; do \ |
| echo "making features in `pwd`/$$i"; \ |
| ( cd $$i ; $(MAKE) features ) ; \ |
| if test $$? != 0 ; then \ |
| exit 1 ; \ |
| fi \ |
| done \ |
| fi |
| |
| .PHONY: cleanfeatures cleanfeaturessubdirs |
| cleanfeatures: cleanfeaturessubdirs |
| rm -f $(FTOBJS) |
| rm -f $(FEATUREFILE) |
| rm -f $(top_builddir)/include/net-snmp/feature-details.h |
| |
| cleanfeaturessubdirs: |
| @if test "$(FTSUBDIRS)" != ""; then \ |
| SUBDIRS="$(FTSUBDIRS)" ; \ |
| else \ |
| SUBDIRS="$(SUBDIRS)" ; \ |
| fi ; \ |
| if test "$$SUBDIRS" != ""; then \ |
| it="$$SUBDIRS" ; \ |
| for i in $$it ; do \ |
| echo "making cleanfeatures in `pwd`/$$i"; \ |
| ( cd $$i ; $(MAKE) cleanfeatures ) ; \ |
| if test $$? != 0 ; then \ |
| exit 1 ; \ |
| fi \ |
| done \ |
| fi |
| |
| # feature-check definitions |
| .SUFFIXES: .ft |
| .c.ft: |
| @test -f $(top_builddir)/include/net-snmp/feature-details.h || \ |
| echo "/* Generated by make. Do not modify directly */" \ |
| > $(top_builddir)/include/net-snmp/feature-details.h |
| $(FEATURECHECK) --feature-global $(top_builddir)/include/net-snmp/feature-details.h $(mysubdir) $< $@ $(CC) -E $(CPPFLAGS) $(CFLAGS) -c |
| |
| subdirs: |
| @if test "$(SUBDIRS)" != ""; then \ |
| it="$(SUBDIRS)" ; \ |
| for i in $$it ; do \ |
| echo "making all in `pwd`/$$i"; \ |
| ( cd $$i ; $(MAKE) ) ; \ |
| if test $$? != 0 ; then \ |
| exit 1 ; \ |
| fi \ |
| done \ |
| fi |
| |
| # installlibs handles local, ucd and subdir libs. need to do subdir libs |
| # before bins, sinze those libs may be needed for successful linking |
| install: installlocalheaders @installucdheaders@ \ |
| installlibs \ |
| installlocalbin installlocalsbin \ |
| installsubdirs $(OTHERINSTALL) |
| |
| uninstall: uninstalllibs uninstallbin uninstallsbin uninstallheaders \ |
| uninstallsubdirs $(OTHERUNINSTALL) |
| |
| installprogs: installbin installsbin |
| |
| # |
| # headers |
| # |
| # set INSTALLHEADERS to a list of things to install in each makefile. |
| # set INSTALLBUILTINCLUDEHEADERS a list built and placed into include/net-snmp/ |
| # set INSTALLBUILTHEADERS to a list of things to install from builddir |
| # set INSTALLSUBDIRHEADERS and INSTALLSUBDIR to subdirectory headers |
| # set INSTALLSUBDIRHEADERS2 and INSTALLSUBDIR2 to more subdirectory headers |
| # set INSTALLBUILTSUBDIRHEADERS and INSTALLBUILTSUBDIR to a list from builddir |
| # |
| installheaders: installlocalheaders @installucdheaders@ installsubdirheaders |
| |
| installlocalheaders: |
| @if test "$(INSTALLBUILTINCLUDEHEADERS)" != "" ; then \ |
| echo creating directory $(INSTALL_PREFIX)$(includedir) ; \ |
| it="$(INSTALLBUILTINCLUDEHEADERS)" ; \ |
| $(SHELL) $(top_srcdir)/mkinstalldirs $(INSTALL_PREFIX)$(includedir)/library ; \ |
| $(SHELL) $(top_srcdir)/mkinstalldirs $(INSTALL_PREFIX)$(includedir)/agent ; \ |
| for i in $$it ; do \ |
| $(INSTALL_DATA) include/net-snmp/$$i $(INSTALL_PREFIX)$(includedir)/$$i ; \ |
| echo "installing $$i in $(INSTALL_PREFIX)$(includedir)/$$i" ; \ |
| done \ |
| fi |
| @if test "$(INSTALLHEADERS)" != "" ; then \ |
| echo creating directory $(INSTALL_PREFIX)$(includedir) ; \ |
| it="$(INSTALLHEADERS)" ; \ |
| $(SHELL) $(top_srcdir)/mkinstalldirs $(INSTALL_PREFIX)$(includedir) ; \ |
| for i in $$it ; do \ |
| $(INSTALL_DATA) $(top_srcdir)/include/net-snmp/$$i $(INSTALL_PREFIX)$(includedir) ; \ |
| echo "installing $$i in $(INSTALL_PREFIX)$(includedir)" ; \ |
| done \ |
| fi |
| @if test "$(INSTALLBUILTHEADERS)" != "" ; then \ |
| echo creating directory $(INSTALL_PREFIX)$(includedir) ; \ |
| it="$(INSTALLBUILTHEADERS)" ; \ |
| $(SHELL) $(top_srcdir)/mkinstalldirs $(INSTALL_PREFIX)$(includedir) ; \ |
| for i in $$it ; do \ |
| $(INSTALL_DATA) $$i $(INSTALL_PREFIX)$(includedir) ; \ |
| echo "installing $$i in $(INSTALL_PREFIX)$(includedir)" ; \ |
| done \ |
| fi |
| @if test "$(INCLUDESUBDIRHEADERS)" != "" ; then \ |
| echo creating directory $(INSTALL_PREFIX)$(includedir)/$(INCLUDESUBDIR) ; \ |
| it="$(INCLUDESUBDIRHEADERS)" ; \ |
| $(SHELL) $(top_srcdir)/mkinstalldirs $(INSTALL_PREFIX)$(includedir)/$(INCLUDESUBDIR) ; \ |
| for i in $$it ; do \ |
| $(INSTALL_DATA) $(top_srcdir)/include/net-snmp/$(INCLUDESUBDIR)/$$i $(INSTALL_PREFIX)$(includedir)/$(INCLUDESUBDIR) ; \ |
| echo "installing $$i in $(INSTALL_PREFIX)$(includedir)/$(INCLUDESUBDIR)" ; \ |
| done \ |
| fi |
| @if test "$(INCLUDESUBDIRHEADERS2)" != "" ; then \ |
| echo creating directory $(INSTALL_PREFIX)$(includedir)/$(INCLUDESUBDIR2) ; \ |
| it="$(INCLUDESUBDIRHEADERS2)" ; \ |
| $(SHELL) $(top_srcdir)/mkinstalldirs $(INSTALL_PREFIX)$(includedir)/$(INCLUDESUBDIR2) ; \ |
| for i in $$it ; do \ |
| $(INSTALL_DATA) $(top_srcdir)/include/net-snmp/$(INCLUDESUBDIR2)/$$i $(INSTALL_PREFIX)$(includedir)/$(INCLUDESUBDIR2) ; \ |
| echo "installing $$i in $(INSTALL_PREFIX)$(includedir)/$(INCLUDESUBDIR2)" ; \ |
| done \ |
| fi |
| @if test "$(INSTALLBUILTSUBDIRHEADERS)" != "" ; then \ |
| echo creating directory $(INSTALL_PREFIX)$(includedir)/$(INSTALLBUILTSUBDIR) ; \ |
| it="$(INSTALLBUILTSUBDIRHEADERS)" ; \ |
| $(SHELL) $(top_srcdir)/mkinstalldirs $(INSTALL_PREFIX)$(includedir)/$(INSTALLBUILTSUBDIR) ; \ |
| for i in $$it ; do \ |
| $(INSTALL_DATA) $$i $(INSTALL_PREFIX)$(includedir)/$(INSTALLBUILTSUBDIR) ; \ |
| echo "installing $$i in $(INSTALL_PREFIX)$(includedir)/$(INSTALLBUILTSUBDIR)" ; \ |
| done \ |
| fi |
| |
| installucdheaders: |
| @if test "$(INSTALLUCDHEADERS)" != "" ; then \ |
| echo creating directory $(INSTALL_PREFIX)$(ucdincludedir) ; \ |
| it="$(INSTALLUCDHEADERS)" ; \ |
| $(SHELL) $(top_srcdir)/mkinstalldirs $(INSTALL_PREFIX)$(ucdincludedir) ; \ |
| for i in $$it ; do \ |
| $(INSTALL_DATA) $(top_srcdir)/include/ucd-snmp/$$i $(INSTALL_PREFIX)$(ucdincludedir) ; \ |
| echo "installing $$i in $(INSTALL_PREFIX)$(ucdincludedir)" ; \ |
| done \ |
| fi |
| |
| installsubdirheaders: |
| @if test "$(SUBDIRS)" != ""; then \ |
| it="$(SUBDIRS)" ; \ |
| for i in $$it ; do \ |
| echo "making installheaders in `pwd`/$$i"; \ |
| ( cd $$i ; $(MAKE) installheaders) ; \ |
| if test $$? != 0 ; then \ |
| exit 1 ; \ |
| fi \ |
| done \ |
| fi |
| |
| uninstallheaders: |
| @if test "$(INSTALLHEADERS)" != "" ; then \ |
| it="$(INSTALLHEADERS)" ; \ |
| for i in $$it ; do \ |
| rm -f $(INSTALL_PREFIX)$(includedir)/$$i ; \ |
| echo "removing $$i from $(INSTALL_PREFIX)$(includedir)" ; \ |
| done \ |
| fi |
| @if test "$(INSTALLBUILTHEADERS)" != "" ; then \ |
| it="$(INSTALLBUILTHEADERS)" ; \ |
| for i in $$it ; do \ |
| rm -f $(INSTALL_PREFIX)$(includedir)/`basename $$i` ; \ |
| echo "removing $$i from $(INSTALL_PREFIX)$(includedir)" ; \ |
| done \ |
| fi |
| @if test "$(INCLUDESUBDIRHEADERS)" != "" ; then \ |
| it="$(INCLUDESUBDIRHEADERS)" ; \ |
| for i in $$it ; do \ |
| rm -f $(INSTALL_PREFIX)$(includedir)/$(INCLUDESUBDIR)/$$i ; \ |
| echo "removing $$i from $(INSTALL_PREFIX)$(includedir)/$(INCLUDESUBDIR)" ; \ |
| done \ |
| fi |
| @if test "$(INCLUDESUBDIRHEADERS2)" != "" ; then \ |
| it="$(INCLUDESUBDIRHEADERS2)" ; \ |
| for i in $$it ; do \ |
| rm -f $(INSTALL_PREFIX)$(includedir)/$(INCLUDESUBDIR2)/$$i ; \ |
| echo "removing $$i from $(INSTALL_PREFIX)$(includedir)/$(INCLUDESUBDIR2)" ; \ |
| done \ |
| fi |
| @if test "$(INSTALLBUILTSUBDIRHEADERS)" != "" ; then \ |
| it="$(INSTALLBUILTSUBDIRHEADERS)" ; \ |
| for i in $$it ; do \ |
| rm -f $(INSTALL_PREFIX)$(includedir)/$(INSTALLBUILTSUBDIR)/`basename $$i` ; \ |
| echo "removing $$i from $(INSTALL_PREFIX)$(includedir)/$(INSTALLBUILTSUBDIR)" ; \ |
| done \ |
| fi |
| |
| # |
| # libraries |
| # |
| # set INSTALLLIBS to a list of things to install in each makefile. |
| # |
| installlibs: installlocallibs @installucdlibs@ installsubdirlibs installpostlibs |
| |
| installlocallibs: $(INSTALLLIBS) |
| @if test "$(INSTALLLIBS)" != ""; then \ |
| it="$(INSTALLLIBS)" ; \ |
| $(SHELL) $(top_srcdir)/mkinstalldirs $(INSTALL_PREFIX)$(libdir) ; \ |
| $(INSTALL) $(INSTALLLIBS) $(INSTALL_PREFIX)$(libdir) ; \ |
| for i in $$it ; do \ |
| echo "installing $$i in $(INSTALL_PREFIX)$(libdir)"; \ |
| $(RANLIB) $(INSTALL_PREFIX)$(libdir)/$$i ; \ |
| done ; \ |
| $(LIB_LDCONFIG_CMD) ; \ |
| fi |
| |
| installpostlibs: $(INSTALLPOSTLIBS) |
| @if test "$(INSTALLPOSTLIBS)" != ""; then \ |
| it="$(INSTALLPOSTLIBS)" ; \ |
| $(SHELL) $(top_srcdir)/mkinstalldirs $(INSTALL_PREFIX)$(libdir) ; \ |
| $(INSTALL) $(INSTALLPOSTLIBS) $(INSTALL_PREFIX)$(libdir) ; \ |
| for i in $$it ; do \ |
| echo "installing $$i in $(INSTALL_PREFIX)$(libdir)"; \ |
| $(RANLIB) $(INSTALL_PREFIX)$(libdir)/$$i ; \ |
| done ; \ |
| $(LIB_LDCONFIG_CMD) ; \ |
| fi |
| |
| installucdlibs: $(INSTALLUCDLIBS) |
| @if test "$(INSTALLUCDLIBS)" != ""; then \ |
| it="$(INSTALLUCDLIBS)" ; \ |
| $(SHELL) $(top_srcdir)/mkinstalldirs $(INSTALL_PREFIX)$(libdir) ; \ |
| $(INSTALL) $(INSTALLUCDLIBS) $(INSTALL_PREFIX)$(libdir) ; \ |
| for i in $$it ; do \ |
| echo "installing $$i in $(INSTALL_PREFIX)$(libdir)"; \ |
| $(RANLIB) $(INSTALL_PREFIX)$(libdir)/$$i ; \ |
| done ; \ |
| $(LIB_LDCONFIG_CMD) ; \ |
| fi |
| |
| installsubdirlibs: |
| @if test "$(SUBDIRS)" != ""; then \ |
| it="$(SUBDIRS)" ; \ |
| for i in $$it ; do \ |
| echo "making installlibs in `pwd`/$$i"; \ |
| ( cd $$i ; $(MAKE) installlibs) ; \ |
| if test $$? != 0 ; then \ |
| exit 1 ; \ |
| fi \ |
| done \ |
| fi |
| |
| uninstalllibs: |
| @if test "$(INSTALLLIBS)" != ""; then \ |
| it="$(INSTALLLIBS)" ; \ |
| for i in $$it ; do \ |
| $(UNINSTALL) $(INSTALL_PREFIX)$(libdir)/$$i ; \ |
| echo "removing $$i from $(INSTALL_PREFIX)$(libdir)"; \ |
| done \ |
| fi |
| |
| # |
| # normal bin binaries |
| # |
| # set INSTALLBINPROGS to a list of things to install in each makefile. |
| # |
| installbin: installlocalbin installsubdirbin |
| |
| installlocalbin: $(INSTALLBINPROGS) |
| @if test "$(INSTALLBINPROGS) $(INSTALLBINSCRIPTS)" != " "; then \ |
| $(SHELL) $(top_srcdir)/mkinstalldirs $(INSTALL_PREFIX)$(bindir) ; \ |
| it="$(INSTALLBINPROGS) $(INSTALLBINSCRIPTS)" ; \ |
| $(INSTALL) $(INSTALLBINPROGS) $(INSTALLBINSCRIPTS) $(INSTALL_PREFIX)$(bindir) ; \ |
| for i in $$it ; do \ |
| echo "installing $$i in $(INSTALL_PREFIX)$(bindir)"; \ |
| done \ |
| fi |
| |
| installsubdirbin: |
| @if test "$(SUBDIRS)" != ""; then \ |
| it="$(SUBDIRS)" ; \ |
| for i in $$it ; do \ |
| echo "making installbin in `pwd`/$$i"; \ |
| ( cd $$i ; $(MAKE) installbin) ; \ |
| if test $$? != 0 ; then \ |
| exit 1 ; \ |
| fi \ |
| done \ |
| fi |
| |
| uninstallbin: |
| @if test "$(INSTALLBINPROGS) $(INSTALLBINSCRIPTS)" != " "; then \ |
| it="$(INSTALLBINPROGS) $(INSTALLBINSCRIPTS)" ; \ |
| for i in $$it ; do \ |
| $(UNINSTALL) $(INSTALL_PREFIX)$(bindir)/$$i ; \ |
| echo "removing $$i from $(INSTALL_PREFIX)$(bindir)"; \ |
| done \ |
| fi |
| |
| # |
| # sbin binaries |
| # |
| # set INSTALLSBINPROGS to a list of things to install in each makefile. |
| # |
| installsbin: installlocalsbin installsubdirsbin |
| |
| installlocalsbin: $(INSTALLSBINPROGS) |
| @if test "$(INSTALLSBINPROGS)" != ""; then \ |
| it="$(INSTALLSBINPROGS)" ; \ |
| $(SHELL) $(top_srcdir)/mkinstalldirs $(INSTALL_PREFIX)$(sbindir) ; \ |
| $(INSTALL) $(INSTALLSBINPROGS) $(INSTALL_PREFIX)$(sbindir) ; \ |
| for i in $$it ; do \ |
| echo "installing $$i in $(INSTALL_PREFIX)$(sbindir)"; \ |
| done \ |
| fi |
| |
| installsubdirsbin: |
| @if test "$(SUBDIRS)" != ""; then \ |
| it="$(SUBDIRS)" ; \ |
| for i in $$it ; do \ |
| echo "making installsbin in `pwd`/$$i"; \ |
| ( cd $$i ; $(MAKE) installsbin) ; \ |
| if test $$? != 0 ; then \ |
| exit 1 ; \ |
| fi \ |
| done \ |
| fi |
| |
| uninstallsbin: |
| @if test "$(INSTALLSBINPROGS)" != ""; then \ |
| it="$(INSTALLSBINPROGS)" ; \ |
| for i in $$it ; do \ |
| $(UNINSTALL) $(INSTALL_PREFIX)$(sbindir)/$$i ; \ |
| echo "removing $$i from $(INSTALL_PREFIX)$(sbindir)"; \ |
| done \ |
| fi |
| |
| # |
| # general make install target for subdirs |
| # |
| installsubdirs: |
| @if test "$(SUBDIRS)" != ""; then \ |
| it="$(SUBDIRS)" ; \ |
| for i in $$it ; do \ |
| echo "making install in `pwd`/$$i"; \ |
| ( cd $$i ; $(MAKE) install) ; \ |
| if test $$? != 0 ; then \ |
| exit 1 ; \ |
| fi \ |
| done \ |
| fi |
| |
| uninstallsubdirs: |
| @if test "$(SUBDIRS)" != ""; then \ |
| it="$(SUBDIRS)" ; \ |
| for i in $$it ; do \ |
| echo "making uninstall in `pwd`/$$i"; \ |
| ( cd $$i ; $(MAKE) uninstall) ; \ |
| if test $$? != 0 ; then \ |
| exit 1 ; \ |
| fi \ |
| done \ |
| fi |
| |
| # |
| # cleaning targets |
| # |
| clean: cleansubdirs $(OTHERCLEANTODOS) |
| $(LIBTOOLCLEAN) ${OBJS} ${LOBJS} ${FTOBJS} core $(STANDARDCLEANTARGETS) $(OTHERCLEANTARGETS) |
| |
| cleansubdirs: |
| @if test "$(SUBDIRS)" != ""; then \ |
| it="$(SUBDIRS)" ; \ |
| for i in $$it ; do \ |
| echo "making clean in `pwd`/$$i"; \ |
| ( cd $$i ; $(MAKE) clean) ; \ |
| if test $$? != 0 ; then \ |
| exit 1 ; \ |
| fi \ |
| done \ |
| fi |
| |
| lint: |
| lint -nhx $(CSRCS) |
| |
| # |
| # wacky dependency building. |
| # |
| depend: dependdirs |
| @if test -f Makefile.depend ; then \ |
| makedepend `echo $(CPPFLAGS) | sed 's/-f[-a-z]*//g'` -o .lo $(srcdir)/*.c $(srcdir)/*/*.c ; \ |
| fi |
| |
| |
| nosysdepend: nosysdependdirs |
| @if test -f Makefile.depend ; then \ |
| makedepend `echo $(CPPFLAGS) | sed 's/-f[-a-z]*//g'` -o .lo $(srcdir)/*.c $(srcdir)/*/*.c ; \ |
| $(PERL) -n -i.bak $(top_srcdir)/makenosysdepend.pl Makefile ; \ |
| fi |
| |
| distdepend: nosysdepend distdependdirs |
| @if test -f Makefile.depend ; then \ |
| $(PERL) $(top_srcdir)/makefileindepend.pl ; \ |
| fi |
| |
| dependdirs: |
| @if test "$(SUBDIRS)" != ""; then \ |
| it="$(SUBDIRS)" ; \ |
| for i in $$it ; do \ |
| echo "making depend in `pwd`/$$i"; \ |
| ( cd $$i ; $(MAKE) depend) ; \ |
| if test $$? != 0 ; then \ |
| exit 1 ; \ |
| fi \ |
| done \ |
| fi |
| |
| nosysdependdirs: |
| @if test "$(SUBDIRS)" != ""; then \ |
| it="$(SUBDIRS)" ; \ |
| for i in $$it ; do \ |
| echo "making nosysdepend in `pwd`/$$i"; \ |
| ( cd $$i ; $(MAKE) nosysdepend) ; \ |
| if test $$? != 0 ; then \ |
| exit 1 ; \ |
| fi \ |
| done \ |
| fi |
| |
| distdependdirs: |
| @if test "$(SUBDIRS)" != ""; then \ |
| it="$(SUBDIRS)" ; \ |
| for i in $$it ; do \ |
| echo "making distdepend in `pwd`/$$i"; \ |
| ( cd $$i ; $(MAKE) distdepend) ; \ |
| if test $$? != 0 ; then \ |
| exit 1 ; \ |
| fi \ |
| done \ |
| fi |
| |
| # These aren't real targets, let gnu's make know that. |
| .PHONY: clean cleansubdirs lint \ |
| install installprogs installheaders installlibs \ |
| installbin installsbin installsubdirs \ |
| all subdirs standardall objs features \ |
| depend nosysdepend distdepend dependdirs nosysdependdirs distdependdirs |