Skip to content

Commit

Permalink
cygwin updates (Bareflank#472)
Browse files Browse the repository at this point in the history
Signed-off-by: Rian Quinn <“rianquinn@gmail.com”>
  • Loading branch information
rianquinn authored and JaredWright committed Mar 2, 2018
1 parent beb9cc3 commit 8b3e5ae
Show file tree
Hide file tree
Showing 8 changed files with 35 additions and 26 deletions.
1 change: 1 addition & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
cmake_minimum_required(VERSION 3.6)
project(hypervisor C CXX)

set(DISABLE_CTEST ON)
set(DISABLE_OPTIONS ON)
set(DISABLE_TARGETS ON)

Expand Down
10 changes: 0 additions & 10 deletions bfm/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,16 +1,6 @@
# cmake ..

cmake_minimum_required(VERSION 3.6)
project(bfm C CXX)

if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
if(NOT WIN32 STREQUAL "1")
set(CMAKE_INSTALL_PREFIX $ENV{HOME}/bfprefix CACHE PATH "" FORCE)
else()
set(CMAKE_INSTALL_PREFIX $ENV{HOMEPATH}/bfprefix CACHE PATH "" FORCE)
endif()
endif()

include(${CMAKE_INSTALL_PREFIX}/cmake/CMakeGlobal_Project.txt)

# ------------------------------------------------------------------------------
Expand Down
13 changes: 10 additions & 3 deletions bfm/ioctl/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ include(${CMAKE_INSTALL_PREFIX}/cmake/CMakeGlobal_Includes.txt)
# Targets
# ------------------------------------------------------------------------------

if(NOT WIN32 STREQUAL "1")
if(NOT CYGWIN STREQUAL "1")
list(APPEND SOURCES
arch/linux/ioctl.cpp
arch/linux/ioctl_private.cpp
Expand All @@ -22,11 +22,18 @@ else()
include_directories(arch/windows/)
endif()

add_library(bfm_ioctl STATIC ${SOURCES})
add_library(bfm_ioctl OBJECT ${SOURCES})
target_compile_definitions(bfm_ioctl PUBLIC STATIC_BFM_IOCTL)

add_library(bf_ioctl SHARED ${SOURCES})
target_compile_definitions(bf_ioctl PUBLIC SHARED_BFM_IOCTL)

if(CYGWIN STREQUAL "1")
target_link_libraries(bf_ioctl setupapi)
endif()

# ------------------------------------------------------------------------------
# Install
# ------------------------------------------------------------------------------

install(TARGETS bfm_ioctl DESTINATION lib)
install(TARGETS bf_ioctl DESTINATION lib)
2 changes: 1 addition & 1 deletion bfm/ioctl/arch/windows/ioctl_private.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
#include <ioctl_private.h>

#include <bfgsl.h>
#include <bfdriverentryinterface.h>
#include <bfdriverinterface.h>

#include <SetupAPI.h>

Expand Down
10 changes: 7 additions & 3 deletions bfm/main/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,10 +8,14 @@ include(${CMAKE_INSTALL_PREFIX}/cmake/CMakeGlobal_Includes.txt)
# Targets
# ------------------------------------------------------------------------------

add_executable(bfm main.cpp)
add_executable(bfm main.cpp $<TARGET_OBJECTS:bfm_src> $<TARGET_OBJECTS:bfm_ioctl>)

target_link_libraries(bfm bfm_src)
target_link_libraries(bfm bfm_ioctl)
if(CYGWIN STREQUAL "1")
target_link_libraries(bfm setupapi)
endif()

target_compile_definitions(bfm PUBLIC STATIC_BFM_SRC)
target_compile_definitions(bfm PUBLIC STATIC_BFM_IOCTL)

# ------------------------------------------------------------------------------
# Install
Expand Down
2 changes: 1 addition & 1 deletion bfm/src/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -14,5 +14,5 @@ list(APPEND SOURCES
${CMAKE_INSTALL_PREFIX}/src/bfvmcall_intel_x64.asm
)

add_library(bfm_src STATIC ${SOURCES})
add_library(bfm_src OBJECT ${SOURCES})
target_compile_definitions(bfm_src PUBLIC STATIC_BFM_SRC)
7 changes: 5 additions & 2 deletions bfsdk/cmake/CMakeGlobal_Project.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,10 @@
# Includes
# ------------------------------------------------------------------------------

include(CTest)
if(NOT DISABLE_CTEST)
include(CTest)
endif()

include(ExternalProject)

# ------------------------------------------------------------------------------
Expand Down Expand Up @@ -62,7 +65,7 @@ if(ENABLE_TIDY)
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
endif()

if(ENABLE_UNITTESTING)
if(NOT DISABLE_CTEST AND ENABLE_UNITTESTING)
enable_testing(true)
endif()

Expand Down
16 changes: 10 additions & 6 deletions bfsdk/include/bfdriverinterface.h
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,10 @@ extern "C" {
#define BAREFLANK_MAJOR 150
#endif

#ifndef BAREFLANK_DEVICETYPE
#define BAREFLANK_DEVICETYPE 0xF00D
#endif

#define IOCTL_ADD_MODULE_LENGTH_CMD 0x801
#define IOCTL_ADD_MODULE_CMD 0x802
#define IOCTL_LOAD_VMM_CMD 0x803
Expand Down Expand Up @@ -97,13 +101,13 @@ DEFINE_GUID(
0xcb,
0x44);

#define IOCTL_ADD_MODULE CTL_CODE(0xF00D, IOCTL_ADD_MODULE_CMD, METHOD_IN_DIRECT, FILE_WRITE_DATA)
#define IOCTL_LOAD_VMM CTL_CODE(0xF00D, IOCTL_LOAD_VMM_CMD, METHOD_BUFFERED, 0)
#define IOCTL_UNLOAD_VMM CTL_CODE(0xF00D, IOCTL_UNLOAD_VMM_CMD, METHOD_BUFFERED, 0)
#define IOCTL_START_VMM CTL_CODE(0xF00D, IOCTL_START_VMM_CMD, METHOD_BUFFERED, 0)
#define IOCTL_STOP_VMM CTL_CODE(0xF00D, IOCTL_STOP_VMM_CMD, METHOD_BUFFERED, 0)
#define IOCTL_ADD_MODULE CTL_CODE(BAREFLANK_DEVICETYPE, IOCTL_ADD_MODULE_CMD, METHOD_IN_DIRECT, FILE_WRITE_DATA)
#define IOCTL_LOAD_VMM CTL_CODE(BAREFLANK_DEVICETYPE, IOCTL_LOAD_VMM_CMD, METHOD_BUFFERED, 0)
#define IOCTL_UNLOAD_VMM CTL_CODE(BAREFLANK_DEVICETYPE, IOCTL_UNLOAD_VMM_CMD, METHOD_BUFFERED, 0)
#define IOCTL_START_VMM CTL_CODE(BAREFLANK_DEVICETYPE, IOCTL_START_VMM_CMD, METHOD_BUFFERED, 0)
#define IOCTL_STOP_VMM CTL_CODE(BAREFLANK_DEVICETYPE, IOCTL_STOP_VMM_CMD, METHOD_BUFFERED, 0)
#define IOCTL_DUMP_VMM CTL_CODE(BAREFLANK_DEVICETYPE, IOCTL_DUMP_VMM_CMD, METHOD_OUT_DIRECT, FILE_READ_DATA)
#define IOCTL_VMM_STATUS CTL_CODE(0xF00D, IOCTL_VMM_STATUS_CMD, METHOD_BUFFERED, FILE_READ_DATA)
#define IOCTL_VMM_STATUS CTL_CODE(BAREFLANK_DEVICETYPE, IOCTL_VMM_STATUS_CMD, METHOD_BUFFERED, FILE_READ_DATA)
#define IOCTL_SET_VCPUID CTL_CODE(BAREFLANK_DEVICETYPE, IOCTL_SET_VCPUID_CMD, METHOD_IN_DIRECT, FILE_WRITE_DATA)

#endif
Expand Down

0 comments on commit 8b3e5ae

Please sign in to comment.