fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync#
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync# Makefile for the VirtualBox FreeBSD Host Drivers.
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync#
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync#
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync#
c58f1213e628a545081c70e26c6b67a841cff880vboxsync# Copyright (C) 2008-2010 Oracle Corporation
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync#
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync# This file is part of VirtualBox Open Source Edition (OSE), as
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync# available from http://www.virtualbox.org. This file is free software;
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync# you can redistribute it and/or modify it under the terms of the GNU
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync# General Public License (GPL) as published by the Free Software
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync# Foundation, in version 2 as it comes in the "COPYING" file of the
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync# VirtualBox OSE distribution. VirtualBox OSE is distributed in the
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync# hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync#
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsyncKBUILD_VERBOSE =
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsyncall:
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync @echo "*** Building 'vboxdrv' module ***"
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync @$(MAKE) KBUILD_VERBOSE=$(KBUILD_VERBOSE) -C vboxdrv
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync @cp vboxdrv/vboxdrv.ko .
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync @echo
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync @if [ -d vboxnetflt ]; then \
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync if [ -f vboxdrv/Module.symvers ]; then \
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync cp vboxdrv/Module.symvers vboxnetflt; \
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync fi; \
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync echo "*** Building 'vboxnetflt' module ***"; \
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync $(MAKE) KBUILD_VERBOSE=$(KBUILD_VERBOSE) -C vboxnetflt; \
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync cp vboxnetflt/vboxnetflt.ko .; \
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync echo; \
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync fi
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync @if [ -d vboxnetadp ]; then \
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync if [ -f vboxdrv/Module.symvers ]; then \
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync cp vboxdrv/Module.symvers vboxnetadp; \
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync fi; \
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync echo "*** Building 'vboxnetadp' module ***"; \
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync $(MAKE) KBUILD_VERBOSE=$(KBUILD_VERBOSE) -C vboxnetadp; \
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync cp vboxnetadp/vboxnetadp.ko .; \
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync echo; \
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync fi
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsyncinstall:
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync @$(MAKE) KBUILD_VERBOSE=$(KBUILD_VERBOSE) -C vboxdrv install
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync @if [ -d vboxnetflt ]; then \
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync $(MAKE) KBUILD_VERBOSE=$(KBUILD_VERBOSE) -C vboxnetflt install; \
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync fi
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync @if [ -d vboxnetadp ]; then \
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync $(MAKE) KBUILD_VERBOSE=$(KBUILD_VERBOSE) -C vboxnetadp install; \
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync fi
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsyncclean:
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync @$(MAKE) -C vboxdrv clean
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync @if [ -d vboxnetflt ]; then \
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync $(MAKE) -C vboxnetflt clean; \
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync fi
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync @if [ -d vboxnetadp ]; then \
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync $(MAKE) -C vboxnetadp clean; \
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync fi
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync rm -f vboxdrv.ko vboxnetflt.ko vboxnetadp.ko
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsyncload:
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync @for module in vboxnetadp vboxnetflt vboxdrv; do \
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync if kldstat -n "$$module" >/dev/null; then \
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync echo "Removing previously installed $$module module"; \
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync /sbin/kldunload $$module; \
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync fi; \
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync done
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync @for module in vboxdrv vboxnetflt vboxnetadp; do \
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync if test -f $$module.ko; then \
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync echo "Installing $$module module"; \
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync /sbin/kldload ./$$module.ko; \
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync fi; \
fc52e3feb173f6200d1c26b8e24891af2132dbc9vboxsync done