include openvas.tmpl

all: openvas.tmpl client

openvas.tmpl: openvas.tmpl.in configure VERSION
	$(SHELL) configure $(CONFIGURE_ARGS)
	touch $@

install: all client-install install-man install-conf
	@echo
	@echo ' --------------------------------------------------------------'
	@echo ' OpenVAS-Client has been successfully installed. '
	@echo ' --------------------------------------------------------------'
	@echo

install-man:
	@echo installing man pages ...
	@test -d $(DESTDIR)${mandir}/man1 || $(INSTALL_DIR) $(DESTDIR)${mandir}/man1

	$(INSTALL) -c -m 0444 ${MAN_OPENVAS_1} $(DESTDIR)${mandir}/man1/OpenVAS-Client.1

install-conf:
	test -d $(DESTDIR)${sysconfdir}/openvas || $(INSTALL_DIR) -m 755 $(DESTDIR)${sysconfdir}/openvas
	$(INSTALL) -m 0644 openvas/openvas-client_log.conf $(DESTDIR)${sysconfdir}/openvas

client-install: client
	test -d $(DESTDIR)${bindir} || $(INSTALL_DIR) -m 755 $(DESTDIR)${bindir}
	$(INSTALL) -m $(CLIENTMODE) ${make_bindir}/OpenVAS-Client $(DESTDIR)${bindir}

client:
	cd openvas && $(MAKE)

man: $(MAN_OPENVAS_1)

$(MAN_OPENVAS_1) : $(MAN_OPENVAS_1).in
	@sed -e '' $(MAN_OPENVAS_1).in  >$(MAN_OPENVAS_1)

buildcheck: all
	cd po && make

clean:
	cd openvas && $(MAKE) clean
	cd src/gui && $(MAKE) clean
	cd src/util && $(MAKE) clean
	cd src && $(MAKE) clean
	rm -rf doc/generated

distclean: clean
	[ -z "${rootdir}" ] || rm -f ${rootdir}/include/config.h ${rootdir}/include/corevers.h
	rm -f openvas.tmpl doc/OpenVAS-Client.1.cat
	[ -z "${make_bindir}" ] || rm -f $(make_bindir)/[oO]pen*
	rm -f libtool config.cache config.status config.log

dist:
	version="`cat VERSION`"; \
	rm -rf openvas-client-$${version}* ; \
	mkdir openvas-client-$${version} ; \
	tar cf openvas-client-$${version}/x.tar `cat MANIFEST`; \
	( cd openvas-client-$${version} ; tar xf x.tar ; rm -f x.tar ) ; \
	tar cf openvas-client-$${version}.tar openvas-client-$${version} ; \
	gzip -9 openvas-client-$${version}.tar

# Generates basic code documentation (placed in doc/generated)
doc:
	doxygen doc/Doxyfile

# Generates more extensive code documentation with graphs
# (placed in doc/generated) and builts doc/generated/latex/refman.pdf
doc-full:
	doxygen doc/Doxyfile_full
	if [ -d doc/generated/latex ]; then make -C doc/generated/latex; fi

.PHONY: doc
