CC ?= gcc
CFLAGS = -Wall `pkg-config --cflags --libs libpanelapplet-2.0`
TARGET = avira-guard-applet
IMAGES = data/avira-guard-icon.png \
	data/avira-guard-open.png \
	data/avira-guard-closed.png
RM_IMAGES = $(subst data/, ,$(IMAGES))
PANEL_IMAGE = gnome-panel-avira.png
SERVERRC = AvGuardApplet.server
POPUP_SCRIPT = popup_message.sh

.PHONY: install clean

$(TARGET): avira-guard-applet.c
	$(CC) $(CFLAGS) avira-guard-applet.c -o $(TARGET)

install: data/$(SERVERRC) $(IMAGES)
	@echo
	# make sure the necessary directories are present
	mkdir -p /usr/lib/gnome-panel /usr/lib/bonobo/servers /usr/share/pixmaps /usr/share/icons/hicolor/32x32/apps

	@echo
	# install applet binary
	# (overwrite already running binary)
	chmod a+x $(TARGET)
	cp -f $(TARGET) /usr/lib/gnome-panel/

	@echo
	# install applet .server file
	cp -f data/$(SERVERRC) /usr/lib/bonobo/servers/

	@echo
	# install popup script
	chmod a+x extra/$(POPUP_SCRIPT)
	cp -f extra/$(POPUP_SCRIPT) /usr/lib/AntiVir/guard/

	@echo
	# install images
	#
	# NOTE: The location of the image files is also defined
	#       in the "avira-guard-applet.c" source file.
	cp -f $(IMAGES) /usr/share/pixmaps/
	cp -f data/$(PANEL_IMAGE) /usr/share/icons/hicolor/32x32/apps

	@echo
	# set up shared directories for communication
	#
	# WARNING: These permissions are _very_ open. You will
	#          certainly want to fine tune them.
	#
	# NOTE: These directories are also defined in the
	#       "avira-guard-applet.c" source file.
	mkdir -p /var/tmp/avira/guard.msg/tmp
	chmod 777 /var/tmp/avira/guard.msg
	if [ ! -d /var/lock ]; then \
		echo "Creating directory /var/lock"; \
		mkdir /var/lock; \
		chmod 775 /var/lock; \
		chown root:uucp /var/lock; \
	fi
	touch /var/lock/LCK..avguard
	chmod 644 /var/lock/LCK..avguard

uninstall:
	rm -f /usr/lib/gnome-panel/$(TARGET)
	rm -f /usr/lib/bonobo/servers/$(SERVERRC)
	for i in $(RM_IMAGES); do \
		rm -f /usr/share/pixmaps/$$i; \
	done
	rm -f /usr/share/icons/hicolor/32x32/apps/$(PANEL_IMAGE)
	rm -f /var/lock/LCK..avguard
	rm -f /usr/lib/AntiVir/guard/$(POPUP_SCRIPT)
	rmdir /var/tmp/avira/guard.msg/tmp
	rmdir /var/tmp/avira/guard.msg
	rmdir /var/tmp/avira

clean:
	rm -f $(TARGET)
