From 4fdf7bc109adf226aadb47c9a5dd76ead90af044 Mon Sep 17 00:00:00 2001 From: Jesse Natalie Date: Thu, 8 Oct 2020 17:26:00 -0700 Subject: [PATCH] Minor fixes to Windows build to improve header include order resiliency (#126) * Rearrange includes in icd_windows.c to ensure DXGI.h has INITGUID defined when it's included * Fix extern "C" usage in Windows build --- loader/windows/icd_windows.c | 3 ++- loader/windows/icd_windows.h | 7 +++++++ loader/windows/icd_windows_apppackage.cpp | 3 --- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/loader/windows/icd_windows.c b/loader/windows/icd_windows.c index 25f1b9b..19a0e7a 100644 --- a/loader/windows/icd_windows.c +++ b/loader/windows/icd_windows.c @@ -16,6 +16,8 @@ * OpenCL is a trademark of Apple Inc. used under license by Khronos. */ +#include + #include "icd.h" #include "icd_windows.h" #include "icd_windows_hkr.h" @@ -25,7 +27,6 @@ #include #include -#include #include typedef HRESULT (WINAPI *PFN_CREATE_DXGI_FACTORY)(REFIID, void **); diff --git a/loader/windows/icd_windows.h b/loader/windows/icd_windows.h index 48bbf13..2a283d3 100644 --- a/loader/windows/icd_windows.h +++ b/loader/windows/icd_windows.h @@ -19,9 +19,16 @@ #include #include +#ifdef __cplusplus +extern "C" { +#endif extern const LUID ZeroLuid; BOOL adapterAdd(const char* szName, LUID luid); // Do not free the memory returned by this function. const char* getOpenCLRegKeyName(void); + +#ifdef __cplusplus +} +#endif diff --git a/loader/windows/icd_windows_apppackage.cpp b/loader/windows/icd_windows_apppackage.cpp index 96a0bb2..b305c5d 100644 --- a/loader/windows/icd_windows_apppackage.cpp +++ b/loader/windows/icd_windows_apppackage.cpp @@ -16,11 +16,8 @@ * OpenCL is a trademark of Apple Inc. used under license by Khronos. */ -extern "C" -{ #include "icd.h" #include "icd_windows.h" -} #ifdef OPENCL_ICD_LOADER_DISABLE_OPENCLON12 -- 2.7.4