# @package      hubzero-vncproxy
# @file	        Makefile
# @author       Nicholas J. Kisseberth <nkissebe@purdue.edu>
# @copyrigh     Copyright (c) 2011-2013 HUBzero Foundation, LLC.
# @license      http://www.gnu.org/licenses/lgpl-3.0.html LGPLv3
#
# Copyright (c) 2011-2013 HUBzero Foundation, LLC.
#
# This file is part of: The HUBzero(R) Platform for Scientific Collaboration
#
# The HUBzero(R) Platform for Scientific Collaboration (HUBzero) is free
# software: you can redistribute it and/or modify it under the terms of
# the GNU Lesser General Public License as published by the Free Software
# Foundation, either version 3 of the License, or (at your option) any
# later version.
#
# HUBzero is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with this program.  If not, see <http://www.gnu.org/licenses/>.
#
# HUBzero is a registered trademark of HUBzero Foundation, LLC.
#

USRBIN=$(DESTDIR)/usr/bin
USRSBIN=$(DESTDIR)/usr/sbin
ETCDIR=$(DESTDIR)/etc
VARLOGDIR=$(DESTDIR)/var/log

#LIBPATH=-L/usr/lib/debug/usr/lib
#CFLAGS=-g

default all build: vncproxy vncproxyd
	@true

vncproxyd.o: vncproxyd.c
	cc -c $(CFLAGS) -D_LARGEFILE64_SOURCE -I/usr/include/apr-1.0 vncproxyd.c

vncproxy.o: vncproxy.c
	cc -c $(CFLAGS) -D_LARGEFILE64_SOURCE -I/usr/include/apr-1.0 vncproxy.c

connect.o: connect.c
	cc -c $(CFLAGS) -D_LARGEFILE64_SOURCE -I/usr/include/apr-1.0 connect.c

log.o: log.c
	cc -c $(CFLAGS) -D_LARGEFILE64_SOURCE -I/usr/include/apr-1.0 log.c

vncproxy: vncproxy.o
	cc vncproxy.o $(LIBPATH) -lapr-1 -laprutil-1 -o vncproxy

vncproxyd: vncproxyd.o connect.o log.o
	cc vncproxyd.o connect.o log.o $(LIBPATH) -lapr-1 -laprutil-1 -o vncproxyd

install: vncproxy vncproxyd
	install --mode 0755 vncproxyd -D $(USRSBIN)/vncproxyd 
	install --mode 0755 vncproxy -D $(USRBIN)/vncproxy 
	install --mode 0755 vncproxyd.init -D $(ETCDIR)/init.d/vncproxyd 
	install --mode 0644 vncproxyd.default -D $(ETCDIR)/default/vncproxyd 
	
configure:
	adduser --system --disabled-password --home /var/lib/vncproxy --group vncproxy
	install --mode 0750 -d $(VARLOGDIR)/vncproxy
	install --mode 0750 -d $(VARLOGDIR)/vncproxyd
	chown www-data:adm /var/log/vncproxy
	chown vncproxy:adm /var/log/vncproxyd
	if [ -x "/etc/init.d/vncproxyd" ]; then \
        update-rc.d vncproxyd defaults >/dev/null; \
        if [ -x "`which invoke-rc.d 2>/dev/null`" ]; then \
                invoke-rc.d vncproxyd start || exit $?; \
        else \
                /etc/init.d/vncproxyd start || exit $?; \
        fi \
	fi

clean:
	rm -f vncproxy.o vncproxyd.o log.o connect.o vncproxyd vncproxy
