Makefile revision 5537ea44398e6dd578ca702ac6fb038b8795dbeb
#
# Makefile for the VirtualBox Linux Host Driver.
# (For 2.6.x this file must be called 'Makefile'!)
#
#
#
# Copyright (C) 2006 innotek GmbH
#
# This file is part of VirtualBox Open Source Edition (OSE), as
# available from http://www.virtualbox.org. This file is free software;
# General Public License as published by the Free Software Foundation,
# in version 2 as it comes in the "COPYING" file of the VirtualBox OSE
# distribution. VirtualBox OSE is distributed in the hope that it will
# be useful, but WITHOUT ANY WARRANTY of any kind.
#
# First, figure out which architecture we're targeting.
# (We have to support basic cross building (ARCH=i386|x86_64).)
#
else
else
else
OBJS = \
# kernel base directory
$(error Error: unable to find the sources of your current Linux kernel. Specify KERN_DIR=<directory> and run Make again.)
$(warning Warning: using /usr/src/linux as the source directory of your Linux kernel. If this is not correct, specify KERN_DIR=<directory> and run Make again.)
else
# includes
$(error Error: unable to find the include directory for your current Linux kernel. Specify KERN_INCL=<directory> and run Make again.)
# module install dir.
else
endif # MODULE_DIR unspecified
# guess kernel version (24 or 26)
# debug - show guesses.
#
# Compiler options
#
KBUILD_EXTMOD := $(shell pwd)
export INCL
KFLAGS := -D__KERNEL__ -DMODULE -DRT_OS_LINUX -DIN_RING0 -DIN_RT_R0 -DIN_SUP_R0 -DVBOX_WITH_IDT_PATCHING
KFLAGS += -DRT_ARCH_AMD64
else
KFLAGS += -DRT_ARCH_X86
#ifeq ($(BUILD_TYPE),debug) - you'll have to enable this manually to get debug stuff.
#KFLAGS += -DDEBUG
#endif
#
# Use the RTR0MemObj API - testing.
#
# 2.4
MODULE_EXT := o
else
# 2.6 and later
MODULE_EXT := ko
# build defs
$(MODULE):
#
# 2.4 Module linking
#
@mkdir -p $(MODULE_DIR); \
install_rpm: $(MODULE)
@mkdir -p $(MODULE_DIR); \
endif # eq($(MAKECMDGOALS),clean)