File Makefile of Package virtualbox-ose

KERNEL_SOURCE ?= /lib/modules/$(shell uname -r)/build

# this is taken from the original Makefile
KFLAGS = -D__KERNEL__ -DMODULE -DRT_OS_LINUX -DIN_RING0 -DIN_RT_R0 -DIN_SUP_R0 -DVBOX -DRT_WITH_VBOX -DVBOX_WITH_HARDENING
ifndef CONFIG_VBOXDRV_FIXEDMAJOR
 KFLAGS  += -DCONFIG_VBOXDRV_AS_MISC
endif

ifeq ($(ARCH),x86_64)
 KFLAGS  += -DRT_ARCH_AMD64
else
 KFLAGS  += -DRT_ARCH_X86
endif

EXTRA_CFLAGS += $(addprefix -I$(KBUILD_EXTMOD),/ /include /r0drv/linux ) $(KFLAGS)

vboxdrv-obj-y = \
    linux/SUPDrv-linux.o \
    SUPDrv.o \
    r0drv/alloc-r0drv.o \
    r0drv/initterm-r0drv.o \
    r0drv/memobj-r0drv.o \
    r0drv/mpnotification-r0drv.o \
    r0drv/linux/alloc-r0drv-linux.o \
    r0drv/linux/initterm-r0drv-linux.o \
    r0drv/linux/memobj-r0drv-linux.o \
    r0drv/linux/mp-r0drv-linux.o \
    r0drv/linux/mpnotification-r0drv-linux.o \
    r0drv/linux/process-r0drv-linux.o \
    r0drv/linux/semevent-r0drv-linux.o \
    r0drv/linux/semfastmutex-r0drv-linux.o \
    r0drv/linux/spinlock-r0drv-linux.o \
    r0drv/linux/semeventmulti-r0drv-linux.o \
    r0drv/linux/thread-r0drv-linux.o \
    r0drv/linux/time-r0drv-linux.o \
    r0drv/linux/timer-r0drv-linux.o \
    common/err/RTErrConvertFromErrno.o

ifeq ($(ARCH), i386)
  vboxdrv-obj-y += \
    math/gcc/divdi3.o \
    math/gcc/moddi3.o \
    math/gcc/qdivrem.o \
    math/gcc/udivdi3.o
endif
ifeq ($(ARCH), x86_64)
  vboxdrv-obj-y += alloc/heapsimple.o
endif

vboxdrv-objs := $(vboxdrv-obj-y)
obj-m += vboxdrv.o


modules modules_install clean:
	$(MAKE) -C $(KERNEL_SOURCE) SUBDIRS=$(shell pwd) $@

install: modules_install

all: modules
openSUSE Build Service is sponsored by