GNUmakefile.in 2.05 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
#
# Copyright (c) 2014 University of Utah and the Flux Group.
# 
# {{{EMULAB-LICENSE
# 
# This file is part of the Emulab network testbed software.
# 
# This file is free software: you can redistribute it and/or modify it
# under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or (at
# your option) any later version.
# 
# This file 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 Affero General Public
# License for more details.
# 
# You should have received a copy of the GNU Affero General Public License
# along with this file.  If not, see <http://www.gnu.org/licenses/>.
# 
# }}}
#
SRCDIR		= @srcdir@
TESTBED_SRCDIR	= @top_srcdir@
OBJDIR		= ../..
SUBDIR		= event/monitoring

SYSTEM	       := $(shell uname -s)
PROGRAMS	= shared-node-listener

include $(OBJDIR)/Makeconf

all:	$(PROGRAMS)

include $(TESTBED_SRCDIR)/GNUmakerules

LIBTBDIR    = $(TESTBED_LIBOBJDIR)/libtb
LIBEVENTDIR = $(TESTBED_LIBOBJDIR)/event
CPPC        = g++

# Rules to make sure that some libraries we need from other directories get
# built first
$(LIBEVENTDIR)/%.a:
	@$(MAKE) -C $(LIBEVENTDIR) $(@F)

CFLAGS   += -DDEBUG
CFLAGS	 += -O2 -g -Wall
CFLAGS   += -I. -I${OBJDIR}
CFLAGS   += -I$(TESTBED_LIBSRCDIR)/event
CFLAGS   += -I/usr/local/include

LDFLAGS  += -L$(TESTBED_LIBOBJDIR)
LDFLAGS  += -L$(TESTBED_LIBOBJDIR)/event
LIBS      = -levent -lcrypto
LIBS     += -L/usr/local/lib -lpubsub -lm
Gary Wong's avatar
Gary Wong committed
56
LIBS     += -L/usr/local/lib/mysql -lmysqlclient
57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76
LDFLAGS  += $(LDSTATIC)

shared-node-listener: shared-node-listener.c
	$(CC) $(CFLAGS) -o $@ $< $(LDFLAGS) $(LIBS)

$(PROGRAMS):	${TESTBED_LIBOBJDIR}/event/libevent.a \
		${TESTBED_LIBSRCDIR}/event/event.h

install:		$(INSTALL_SBINDIR)/protogeni/shared-node-listener

client:
client-install:

clean:
	/bin/rm -f *.o $(PROGRAMS) *-debug

$(INSTALL_SBINDIR)/protogeni/%: %
	@echo "Installing $<"
	-mkdir -p $(INSTALL_SBINDIR)/protogeni
	$(INSTALL) $< $@