Makefile revision 5979821e2c16d1fcec5b9a3ef64e13246fc9a93a
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# $Id$
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync## @file
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# Makefile for the VirtualBox FreeBSD Host Driver.
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync#
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync#
c7814cf6e1240a519cbec0441e033d0e2470ed00vboxsync# Copyright (C) 2006-2015 Oracle Corporation
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync#
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# This file is part of VirtualBox Open Source Edition (OSE), as
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# available from http://www.virtualbox.org. This file is free software;
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# you can redistribute it and/or modify it under the terms of the GNU
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# General Public License (GPL) as published by the Free Software
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# Foundation, in version 2 as it comes in the "COPYING" file of the
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# VirtualBox OSE distribution. VirtualBox OSE is distributed in the
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync#
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# The contents of this file may alternatively be used under the terms
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# of the Common Development and Distribution License Version 1.0
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# (CDDL) only, as it comes in the "COPYING.CDDL" file of the
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# VirtualBox OSE distribution, in which case the provisions of the
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# CDDL are applicable instead of those of the GPL.
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync#
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# You may elect to license modified versions of this file under the
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# terms and conditions of either the GPL or the CDDL or both.
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync#
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncKMOD = vboxdrv
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncCFLAGS += -DRT_OS_FREEBSD -DIN_RING0 -DIN_RT_R0 -DIN_SUP_R0 -DSUPDRV_WITH_RELEASE_LOGGER -DVBOX -DRT_WITH_VBOX -Iinclude -I. -Ir0drv -w -DVBOX_WITH_HARDENING -DVBOX_WITH_64_BITS_GUESTS
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync.if (${MACHINE_ARCH} == "i386")
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync CFLAGS += -DRT_ARCH_X86
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync.elif (${MACHINE_ARCH} == "amd64")
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync CFLAGS += -DRT_ARCH_AMD64
11f8b3da5f2ead2461e7998b3b091bb0f7bd14d9vboxsync.endif
cb0578a5309e1fc264e5a4acc30543bea075be43vboxsync
384478d3896257fbce9ceb8c01e74040b969e6d7vboxsyncSRCS = \
73ba84f95f918cc170be38908ad240fbb2f8f354vboxsync SUPDrv.c \
73ba84f95f918cc170be38908ad240fbb2f8f354vboxsync SUPDrvGip.c \
73ba84f95f918cc170be38908ad240fbb2f8f354vboxsync SUPDrvSem.c \
384478d3896257fbce9ceb8c01e74040b969e6d7vboxsync SUPDrvTracer.c \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync SUPLibAll.c \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# Include needed interface headers so they are created during build
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncSRCS += \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync device_if.h \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync bus_if.h
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync.PATH: ${.CURDIR}/freebsd
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncSRCS += \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync SUPDrv-freebsd.c
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync.PATH: ${.CURDIR}/alloc
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncSRCS += \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync heapsimple.c \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync alloc.c
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync.PATH: ${.CURDIR}/common/err
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncSRCS += \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync RTErrConvertFromErrno.c \
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync RTErrConvertToErrno.c
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync.PATH: ${.CURDIR}/common/log
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsyncSRCS += \
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync log.c \
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync logellipsis.c \
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync logrel.c \
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync logrelellipsis.c \
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync logcom.c \
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync logformat.c
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync.PATH: ${.CURDIR}/common/misc
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsyncSRCS += \
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync RTAssertMsg1Weak.c \
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync RTAssertMsg2.c \
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync RTAssertMsg2Add.c \
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync RTAssertMsg2AddWeak.c \
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync RTAssertMsg2AddWeakV.c \
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync RTAssertMsg2Weak.c \
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync RTAssertMsg2WeakV.c \
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync assert.c \
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync handletable.c \
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync handletablectx.c \
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync once.c \
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync term.c \
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync thread.c
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync.PATH: ${.CURDIR}/common/string
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsyncSRCS += \
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync RTStrNCmp.c \
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync RTStrNLen.c \
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync RTStrCopy.c \
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync RTStrCopyEx.c \
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync RTStrCopyP.c \
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync strformat.c \
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync strformatrt.c \
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync strformattype.c \
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync strprintf.c \
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync strtonum.c \
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync memchr.c \
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync stringalloc.c
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync.PATH: ${.CURDIR}/common/rand
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsyncSRCS += \
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync rand.c \
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync randadv.c \
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync randparkmiller.c
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync.PATH: ${.CURDIR}/common/path
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsyncSRCS += \
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync RTPathStripFilename.c
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync.PATH: ${.CURDIR}/common/checksum
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsyncSRCS += \
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync crc32.c \
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync ipv4.c \
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync ipv6.c
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync.PATH: ${.CURDIR}/common/table
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsyncSRCS += \
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync avlpv.c
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync.PATH: ${.CURDIR}/common/time
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsyncSRCS += \
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync time.c
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync.PATH: ${.CURDIR}/generic
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsyncSRCS += \
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync uuid-generic.c \
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync RTAssertShouldPanic-generic.c \
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync RTLogWriteDebugger-generic.c \
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync RTLogWriteStdOut-stub-generic.c \
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync RTLogWriteStdErr-stub-generic.c \
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync RTLogWriteUser-generic.c \
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync RTMpGetArraySize-generic.c \
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync RTMpOnPair-generic.c \
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync RTRandAdvCreateSystemFaster-generic.c \
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync RTRandAdvCreateSystemTruer-generic.c \
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync RTSemEventWait-2-ex-generic.c \
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync RTSemEventWaitNoResume-2-ex-generic.c \
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync RTSemEventMultiWait-2-ex-generic.c \
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync RTSemEventMultiWaitNoResume-2-ex-generic.c \
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync RTTimerCreate-generic.c \
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync errvars-generic.c \
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync mppresent-generic.c \
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync timer-generic.c
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync.PATH: ${.CURDIR}/r0drv
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsyncSRCS += \
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync alloc-r0drv.c \
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync initterm-r0drv.c \
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync memobj-r0drv.c \
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync powernotification-r0drv.c
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync.PATH: ${.CURDIR}/r0drv/freebsd
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsyncSRCS += \
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync assert-r0drv-freebsd.c \
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync alloc-r0drv-freebsd.c \
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync initterm-r0drv-freebsd.c \
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync memobj-r0drv-freebsd.c \
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync memuserkernel-r0drv-freebsd.c \
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync mp-r0drv-freebsd.c \
3a343ca21a267ec3c54e2317e2ed18fe99b8ebbbvboxsync process-r0drv-freebsd.c \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync semevent-r0drv-freebsd.c \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync semeventmulti-r0drv-freebsd.c \
3a343ca21a267ec3c54e2317e2ed18fe99b8ebbbvboxsync semfastmutex-r0drv-freebsd.c \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync semmutex-r0drv-freebsd.c \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync spinlock-r0drv-freebsd.c \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync thread-r0drv-freebsd.c \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync thread2-r0drv-freebsd.c \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync time-r0drv-freebsd.c
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync.PATH: ${.CURDIR}/r0drv/generic
3a343ca21a267ec3c54e2317e2ed18fe99b8ebbbvboxsyncSRCS += \
3a343ca21a267ec3c54e2317e2ed18fe99b8ebbbvboxsync semspinmutex-r0drv-generic.c \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync mpnotification-r0drv-generic.c \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync threadctxhooks-r0drv-generic.c \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync RTMpIsCpuWorkPending-r0drv-generic.c
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync.PATH: ${.CURDIR}/VBox
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncSRCS += \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync log-vbox.c
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync.include <bsd.kmod.mk>
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync