Makefile revision 41a839133aad7c96a0d55d927dc3475d0cbe9c22
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley# $Id$
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley## @file
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley# VirtualBox Guest Additions Module Makefile.
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley#
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley#
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley# Copyright (C) 2006-2009 Sun Microsystems, Inc.
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley#
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley# This file is part of VirtualBox Open Source Edition (OSE), as
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley# available from http://www.virtualbox.org. This file is free software;
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley# you can redistribute it and/or modify it under the terms of the GNU
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley# General Public License (GPL) as published by the Free Software
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley# Foundation, in version 2 as it comes in the "COPYING" file of the
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley# VirtualBox OSE distribution. VirtualBox OSE is distributed in the
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley# hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley#
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley# Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley# Clara, CA 95054 USA or visit http://www.sun.com if you need
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley# additional information or have any questions.
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley#
5619558151f1aa4249b3ead979e76876e29278b6Bob HalleyKMOD = vboxguest
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley
5619558151f1aa4249b3ead979e76876e29278b6Bob HalleyCFLAGS += -DRT_OS_FREEBSD -DIN_RING0 -DIN_RT_R0 -DIN_SUP_R0 -DVBOX -DRT_WITH_VBOX -Iinclude -I. -Ir0drv -w -DVBGL_VBOXGUEST -DVBOX_WITH_HGCM -DVBOX_WITH_64_BITS_GUESTS
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley.if (${MACHINE_ARCH} == "i386")
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley CFLAGS += -DRT_ARCH_X86
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley.elif (${MACHINE_ARCH} == "amd64")
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley CFLAGS += -DRT_ARCH_AMD64
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley.endif
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley
5619558151f1aa4249b3ead979e76876e29278b6Bob HalleySRCS = \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley VBoxGuest.c \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley VBoxGuest-freebsd.c \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley GenericRequest.c \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley HGCMInternal.c \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley Init.c \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley PhysHeap.c \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley SysHlp.c \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley VMMDev.c
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley# Include needed interface headers so they are created during build
5619558151f1aa4249b3ead979e76876e29278b6Bob HalleySRCS += \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley device_if.h \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley bus_if.h \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley pci_if.h \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley.PATH: ${.CURDIR}/alloc
5619558151f1aa4249b3ead979e76876e29278b6Bob HalleySRCS += \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley heapsimple.c
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley.PATH: ${.CURDIR}/common/err
5619558151f1aa4249b3ead979e76876e29278b6Bob HalleySRCS += \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley RTErrConvertFromErrno.c \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley RTErrConvertToErrno.c
904a5734375869ffb504ed8cde6b68cafadb6d64Bob Halley
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley.PATH: ${.CURDIR}/common/log
5619558151f1aa4249b3ead979e76876e29278b6Bob HalleySRCS += \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley log.c \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley logellipsis.c \
904a5734375869ffb504ed8cde6b68cafadb6d64Bob Halley logrel.c \
904a5734375869ffb504ed8cde6b68cafadb6d64Bob Halley logrelellipsis.c \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley logcom.c \
bf345589ce0b0b64533d4566e4992a0e63aac6f5Bob Halley logformat.c
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley.PATH: ${.CURDIR}/common/misc
5619558151f1aa4249b3ead979e76876e29278b6Bob HalleySRCS += \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley RTAssertMsg1Weak.c \
1c724c986de1449e3b2f1eeae4c724dc0d97603cBob Halley RTAssertMsg2.c \
1c724c986de1449e3b2f1eeae4c724dc0d97603cBob Halley RTAssertMsg2Add.c \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley RTAssertMsg2AddWeak.c \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley RTAssertMsg2AddWeakV.c \
f3a8ab700be9b39df0599f15b56434431eb66fb8Bob Halley RTAssertMsg2Weak.c \
f3a8ab700be9b39df0599f15b56434431eb66fb8Bob Halley RTAssertMsg2WeakV.c \
f3a8ab700be9b39df0599f15b56434431eb66fb8Bob Halley assert.c \
f3a8ab700be9b39df0599f15b56434431eb66fb8Bob Halley handletable.c \
f3a8ab700be9b39df0599f15b56434431eb66fb8Bob Halley handletablectx.c \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley once.c \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley thread.c
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley.PATH: ${.CURDIR}/common/string
5619558151f1aa4249b3ead979e76876e29278b6Bob HalleySRCS += \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley strformat.c \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley strformatrt.c \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley strformattype.c \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley strprintf.c \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley strtonum.c \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley memchr.c \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley string.c
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley.PATH: ${.CURDIR}/common/rand
5619558151f1aa4249b3ead979e76876e29278b6Bob HalleySRCS += \
904a5734375869ffb504ed8cde6b68cafadb6d64Bob Halley rand.c \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley randadv.c \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley randparkmiller.c
ca67883a666bdf314d3da958d5195e7215b1f797Bob Halley
d773adf65c62aa3b040ffa1f5c12d850470ee224Michael Graff.PATH: ${.CURDIR}/common/path
d773adf65c62aa3b040ffa1f5c12d850470ee224Michael GraffSRCS += \
d773adf65c62aa3b040ffa1f5c12d850470ee224Michael Graff RTPathStripFilename.c
d773adf65c62aa3b040ffa1f5c12d850470ee224Michael Graff
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley.PATH: ${.CURDIR}/common/checksum
5619558151f1aa4249b3ead979e76876e29278b6Bob HalleySRCS += \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley crc32.c \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley ipv4.c
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley.PATH: ${.CURDIR}/common/table
5619558151f1aa4249b3ead979e76876e29278b6Bob HalleySRCS += \
e496615043400500492fa7b891c515c8e7cb7d08Bob Halley avlpv.c
e496615043400500492fa7b891c515c8e7cb7d08Bob Halley
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley.PATH: ${.CURDIR}/generic
5619558151f1aa4249b3ead979e76876e29278b6Bob HalleySRCS += \
bf345589ce0b0b64533d4566e4992a0e63aac6f5Bob Halley uuid-generic.c \
bf345589ce0b0b64533d4566e4992a0e63aac6f5Bob Halley RTAssertShouldPanic-generic.c \
d773adf65c62aa3b040ffa1f5c12d850470ee224Michael Graff RTLogWriteDebugger-generic.c \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley RTLogWriteStdOut-stub-generic.c \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley RTLogWriteStdErr-stub-generic.c \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley RTRandAdvCreateSystemFaster-generic.c \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley RTRandAdvCreateSystemTruer-generic.c \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley RTTimerCreate-generic.c \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley timer-generic.c \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley mppresent-generic.c
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley.PATH: ${.CURDIR}/r0drv
5619558151f1aa4249b3ead979e76876e29278b6Bob HalleySRCS += \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley alloc-r0drv.c \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley initterm-r0drv.c \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley memobj-r0drv.c \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley powernotification-r0drv.c
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley.PATH: ${.CURDIR}/r0drv/freebsd
5619558151f1aa4249b3ead979e76876e29278b6Bob HalleySRCS += \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley assert-r0drv-freebsd.c \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley alloc-r0drv-freebsd.c \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley initterm-r0drv-freebsd.c \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley memobj-r0drv-freebsd.c \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley memuserkernel-r0drv-freebsd.c \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley mp-r0drv-freebsd.c \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley process-r0drv-freebsd.c \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley semevent-r0drv-freebsd.c \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley semeventmulti-r0drv-freebsd.c \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley semfastmutex-r0drv-freebsd.c \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley spinlock-r0drv-freebsd.c \
2cd0c38115b1efb043ed3104c0d08e51ceade0d7Bob Halley thread-r0drv-freebsd.c \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley thread2-r0drv-freebsd.c \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley time-r0drv-freebsd.c
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley.PATH: ${.CURDIR}/r0drv/generic
5619558151f1aa4249b3ead979e76876e29278b6Bob HalleySRCS += \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley semspinmutex-r0drv-generic.c \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley mpnotification-r0drv-generic.c \
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley RTMpIsCpuWorkPending-r0drv-generic.c
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley
5619558151f1aa4249b3ead979e76876e29278b6Bob Halley.PATH: ${.CURDIR}/VBox
bf345589ce0b0b64533d4566e4992a0e63aac6f5Bob HalleySRCS += \
bf345589ce0b0b64533d4566e4992a0e63aac6f5Bob Halley log-vbox.c \
bf345589ce0b0b64533d4566e4992a0e63aac6f5Bob Halley logbackdoor.c \
bf345589ce0b0b64533d4566e4992a0e63aac6f5Bob Halley strformat-vbox.c \
bf345589ce0b0b64533d4566e4992a0e63aac6f5Bob Halley
bf345589ce0b0b64533d4566e4992a0e63aac6f5Bob Halley.include <bsd.kmod.mk>
bf345589ce0b0b64533d4566e4992a0e63aac6f5Bob Halley
bf345589ce0b0b64533d4566e4992a0e63aac6f5Bob Halley