#
# Copyright (c) 1995-1996, 1998-2001 University of Utah and the Flux Group.
# All rights reserved.
# 
# This file is part of the Flux OSKit.  The OSKit is free software, also known
# as "open source;" you can redistribute it and/or modify it under the terms
# of the GNU General Public License (GPL), version 2, as published by the Free
# Software Foundation (FSF).  To explore alternate licensing terms, contact
# the University of Utah at csl-dist@cs.utah.edu or +1-801-585-3271.
# 
# The OSKit 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 GPL for more details.  You should have
# received a copy of the GPL along with the OSKit; see the file COPYING.  If
# not, write to the FSF, 59 Temple Place #330, Boston, MA 02111-1307, USA.
#

ifndef _oskit_examples_x86_video_x11_makerules_
_oskit_examples_x86_video_x11_makerules__ = yes

TARGETS = video

all: $(TARGETS)
prepare::

SRCDIRS +=	$(OSKIT_SRCDIR)/examples/x86				\
		$(OSKIT_SRCDIR)/examples/x86/video_x11			\
		$(OSKIT_SRCDIR)/examples/x86/shared

INCDIRS +=	$(OSKIT_SRCDIR)/oskit/c					\
		$(OSKIT_SRCDIR)/examples/x86/shared

CLEAN_FILES +=	$(TARGETS) *.gdb
OSKIT_CFLAGS += -DOSKIT
OSKIT_LDFLAGS += -static

#
# The C library is made up of several pieces. The core library, the
# POSIX interface that converts syscalls to COM, and the actual COM
# interfaces. Note that the COM library uses malloc/free ...
#
CLIB   = -loskit_freebsd_c -loskit_com -loskit_freebsd_c
CLIB_P = -loskit_freebsd_c_p -loskit_com_p -loskit_gprof \
	 -loskit_freebsd_c_p -loskit_kern_p

include $(OSKIT_SRCDIR)/GNUmakerules

DEPENDLIBS = $(filter %.a, $(foreach DIR,$(LIBDIRS),$(wildcard $(DIR)/*)))

# This should really use doprnt-float.o.
video: $(OBJDIR)/lib/multiboot.o video.o $(DEPENDLIBS)
	$(OSKIT_QUIET_MAKE_INFORM) "Linking extended example $@"
	$(LD) -Ttext 100000 $(LDFLAGS) $(OSKIT_LDFLAGS) \
		-o $@ $(filter-out %.a,$^)		\
		-loskit_startup -loskit_clientos -loskit_memfs \
		-loskit_fsnamespace -loskit_x11video \
		-loskit_unsupp \
		-loskit_freebsd_dev -loskit_linux_dev \
		-loskit_dev -loskit_kern -loskit_lmm \
		$(CLIB) -loskit_freebsd_m $(CLIB) $(OBJDIR)/lib/crtn.o

endif
