VirtualBox

source: vbox/trunk/src/VBox/HostDrivers/Support/freebsd/Makefile

Last change on this file was 98103, checked in by vboxsync, 16 months ago

Copyright year updates by scm.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 4.6 KB
RevLine 
[23526]1# $Id: Makefile 98103 2023-01-17 14:15:46Z vboxsync $
2## @file
3# Makefile for the VirtualBox FreeBSD Host Driver.
4#
5
6#
[98103]7# Copyright (C) 2006-2023 Oracle and/or its affiliates.
[23526]8#
[96407]9# This file is part of VirtualBox base platform packages, as
10# available from https://www.virtualbox.org.
[23526]11#
[96407]12# This program is free software; you can redistribute it and/or
13# modify it under the terms of the GNU General Public License
14# as published by the Free Software Foundation, in version 3 of the
15# License.
16#
17# This program is distributed in the hope that it will be useful, but
18# WITHOUT ANY WARRANTY; without even the implied warranty of
19# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
20# General Public License for more details.
21#
22# You should have received a copy of the GNU General Public License
23# along with this program; if not, see <https://www.gnu.org/licenses>.
24#
[23526]25# The contents of this file may alternatively be used under the terms
26# of the Common Development and Distribution License Version 1.0
[96407]27# (CDDL), a copy of it is provided in the "COPYING.CDDL" file included
28# in the VirtualBox distribution, in which case the provisions of the
[23526]29# CDDL are applicable instead of those of the GPL.
30#
31# You may elect to license modified versions of this file under the
32# terms and conditions of either the GPL or the CDDL or both.
33#
[96407]34# SPDX-License-Identifier: GPL-3.0-only OR CDDL-1.0
35#
[23526]36
37KMOD = vboxdrv
38
[43435]39CFLAGS += -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
[23526]40
41.if (${MACHINE_ARCH} == "i386")
42 CFLAGS += -DRT_ARCH_X86
43.elif (${MACHINE_ARCH} == "amd64")
44 CFLAGS += -DRT_ARCH_AMD64
45.endif
46
47SRCS = \
48 SUPDrv.c \
[54327]49 SUPDrvGip.c \
[25465]50 SUPDrvSem.c \
[40917]51 SUPDrvTracer.c \
[54224]52 SUPLibAll.c \
[23526]53
[24886]54# Include needed interface headers so they are created during build
55SRCS += \
56 device_if.h \
57 bus_if.h
[23526]58
[24886]59.PATH: ${.CURDIR}/freebsd
60SRCS += \
61 SUPDrv-freebsd.c
62
63.PATH: ${.CURDIR}/alloc
64SRCS += \
[31842]65 heapsimple.c \
66 alloc.c
[24886]67
68.PATH: ${.CURDIR}/common/err
69SRCS += \
70 RTErrConvertFromErrno.c \
[69762]71 RTErrConvertToErrno.c \
72 errinfo.c
[24886]73
74.PATH: ${.CURDIR}/common/log
75SRCS += \
76 log.c \
77 logellipsis.c \
78 logrel.c \
79 logrelellipsis.c \
80 logcom.c \
[91789]81 logformat.c \
82 RTLogCreateEx.c
[24886]83
84.PATH: ${.CURDIR}/common/misc
85SRCS += \
[25528]86 RTAssertMsg1Weak.c \
[25532]87 RTAssertMsg2.c \
[25536]88 RTAssertMsg2Add.c \
89 RTAssertMsg2AddWeak.c \
90 RTAssertMsg2AddWeakV.c \
[25528]91 RTAssertMsg2Weak.c \
92 RTAssertMsg2WeakV.c \
93 assert.c \
[24886]94 handletable.c \
95 handletablectx.c \
96 once.c \
[55095]97 term.c \
[24886]98 thread.c
99
100.PATH: ${.CURDIR}/common/string
101SRCS += \
[69768]102 RTStrCat.c \
[36796]103 RTStrNCmp.c \
[42596]104 RTStrNLen.c \
[36796]105 RTStrCopy.c \
[55095]106 RTStrCopyEx.c \
[36408]107 RTStrCopyP.c \
[83886]108 RTStrEnd.c \
[24886]109 strformat.c \
[91789]110 RTStrFormat.c \
[69836]111 strformatnum.c \
[24886]112 strformatrt.c \
113 strformattype.c \
114 strprintf.c \
[91789]115 strprintf-ellipsis.c \
[90829]116 strprintf2.c \
[91789]117 strprintf2-ellipsis.c \
[24886]118 strtonum.c \
119 memchr.c \
[26881]120 stringalloc.c
[24886]121
122.PATH: ${.CURDIR}/common/rand
123SRCS += \
124 rand.c \
125 randadv.c \
126 randparkmiller.c
127
128.PATH: ${.CURDIR}/common/path
129SRCS += \
130 RTPathStripFilename.c
131
132.PATH: ${.CURDIR}/common/checksum
133SRCS += \
134 crc32.c \
[31829]135 ipv4.c \
136 ipv6.c
[24886]137
138.PATH: ${.CURDIR}/common/table
139SRCS += \
140 avlpv.c
141
[31842]142.PATH: ${.CURDIR}/common/time
143SRCS += \
144 time.c
145
[24886]146.PATH: ${.CURDIR}/generic
147SRCS += \
148 uuid-generic.c \
149 RTAssertShouldPanic-generic.c \
150 RTLogWriteDebugger-generic.c \
151 RTLogWriteStdOut-stub-generic.c \
152 RTLogWriteStdErr-stub-generic.c \
153 RTLogWriteUser-generic.c \
[32572]154 RTMpGetArraySize-generic.c \
[54419]155 RTMpOnPair-generic.c \
[24886]156 RTRandAdvCreateSystemFaster-generic.c \
157 RTRandAdvCreateSystemTruer-generic.c \
[33379]158 RTSemEventWait-2-ex-generic.c \
159 RTSemEventWaitNoResume-2-ex-generic.c \
160 RTSemEventMultiWait-2-ex-generic.c \
161 RTSemEventMultiWaitNoResume-2-ex-generic.c \
[24886]162 RTTimerCreate-generic.c \
[66415]163 rtStrFormatKernelAddress-generic.c \
[37233]164 errvars-generic.c \
[36254]165 mppresent-generic.c \
166 timer-generic.c
[24886]167
168.PATH: ${.CURDIR}/r0drv
169SRCS += \
170 alloc-r0drv.c \
[60603]171 alloc-ef-r0drv.c \
[24886]172 initterm-r0drv.c \
173 memobj-r0drv.c \
174 powernotification-r0drv.c
175
176.PATH: ${.CURDIR}/r0drv/freebsd
177SRCS += \
178 assert-r0drv-freebsd.c \
179 alloc-r0drv-freebsd.c \
180 initterm-r0drv-freebsd.c \
181 memobj-r0drv-freebsd.c \
182 memuserkernel-r0drv-freebsd.c \
183 mp-r0drv-freebsd.c \
184 process-r0drv-freebsd.c \
185 semevent-r0drv-freebsd.c \
186 semeventmulti-r0drv-freebsd.c \
187 semfastmutex-r0drv-freebsd.c \
[28476]188 semmutex-r0drv-freebsd.c \
[24886]189 spinlock-r0drv-freebsd.c \
190 thread-r0drv-freebsd.c \
191 thread2-r0drv-freebsd.c \
192 time-r0drv-freebsd.c
193
194.PATH: ${.CURDIR}/r0drv/generic
195SRCS += \
196 semspinmutex-r0drv-generic.c \
197 mpnotification-r0drv-generic.c \
[55095]198 threadctxhooks-r0drv-generic.c \
[24886]199 RTMpIsCpuWorkPending-r0drv-generic.c
200
201.PATH: ${.CURDIR}/VBox
202SRCS += \
[96814]203 log-vbox.c \
204 RTLogWriteVmm-amd64-x86.c
[24886]205
[23526]206.include <bsd.kmod.mk>
207
Note: See TracBrowser for help on using the repository browser.

© 2023 Oracle
ContactPrivacy policyTerms of Use