intel: wrap intel_bufmgr.h C code for C++ compilation/linking
diff mbox

Message ID 1435750639-6090-1-git-send-email-tapani.palli@intel.com
State New
Headers show

Commit Message

Tapani Pälli July 1, 2015, 11:37 a.m. UTC
(We need this include in porting changes for the OpenGL ES
conformance suite.)

Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
---
 intel/intel_bufmgr.h | 8 ++++++++
 1 file changed, 8 insertions(+)

Comments

Emil Velikov July 3, 2015, 3:44 p.m. UTC | #1
On 01/07/15 12:37, Tapani Pälli wrote:
> (We need this include in porting changes for the OpenGL ES
> conformance suite.)
> 
> Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
> ---
>  intel/intel_bufmgr.h | 8 ++++++++
>  1 file changed, 8 insertions(+)
> 
> diff --git a/intel/intel_bufmgr.h b/intel/intel_bufmgr.h
> index 285919e..f061454 100644
> --- a/intel/intel_bufmgr.h
> +++ b/intel/intel_bufmgr.h
> @@ -38,6 +38,10 @@
>  #include <stdint.h>
>  #include <stdio.h>
>  
> +#if defined(__cplusplus) || defined(c_plusplus)
> +extern "C" {
> +#endif
> +
Strongly in favour - I've been pondering on this for a very long time.
Just a question - is there a compiler that care about (something from
the last decade) that does not define __cplusplus but c_plusplus ?

Afaict the former is defined since (at least) the 1998 C++ standard,
while the latter is extremely rare, and mostly mentioned as decrecated.

-Emil
Tapani Pälli July 27, 2015, 9:59 a.m. UTC | #2
On 07/03/2015 06:44 PM, Emil Velikov wrote:
> On 01/07/15 12:37, Tapani Pälli wrote:
>> (We need this include in porting changes for the OpenGL ES
>> conformance suite.)
>>
>> Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
>> ---
>>   intel/intel_bufmgr.h | 8 ++++++++
>>   1 file changed, 8 insertions(+)
>>
>> diff --git a/intel/intel_bufmgr.h b/intel/intel_bufmgr.h
>> index 285919e..f061454 100644
>> --- a/intel/intel_bufmgr.h
>> +++ b/intel/intel_bufmgr.h
>> @@ -38,6 +38,10 @@
>>   #include <stdint.h>
>>   #include <stdio.h>
>>   
>> +#if defined(__cplusplus) || defined(c_plusplus)
>> +extern "C" {
>> +#endif
>> +
> Strongly in favour - I've been pondering on this for a very long time.
> Just a question - is there a compiler that care about (something from
> the last decade) that does not define __cplusplus but c_plusplus ?

I don't know, this was just copy paste from other file.

> Afaict the former is defined since (at least) the 1998 C++ standard,
> while the latter is extremely rare, and mostly mentioned as decrecated.

For me it is ok to drop c_plusplus, no strong opinion.

> -Emil
>

// Tapani
Emil Velikov July 28, 2015, 3:25 p.m. UTC | #3
On 27 July 2015 at 10:59, Tapani Pälli <tapani.palli@intel.com> wrote:
> On 07/03/2015 06:44 PM, Emil Velikov wrote:
>>
>> On 01/07/15 12:37, Tapani Pälli wrote:
>>>
>>> (We need this include in porting changes for the OpenGL ES
>>> conformance suite.)
>>>
>>> Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
>>> ---
>>>   intel/intel_bufmgr.h | 8 ++++++++
>>>   1 file changed, 8 insertions(+)
>>>
>>> diff --git a/intel/intel_bufmgr.h b/intel/intel_bufmgr.h
>>> index 285919e..f061454 100644
>>> --- a/intel/intel_bufmgr.h
>>> +++ b/intel/intel_bufmgr.h
>>> @@ -38,6 +38,10 @@
>>>   #include <stdint.h>
>>>   #include <stdio.h>
>>>   +#if defined(__cplusplus) || defined(c_plusplus)
>>> +extern "C" {
>>> +#endif
>>> +
>>
>> Strongly in favour - I've been pondering on this for a very long time.
>> Just a question - is there a compiler that care about (something from
>> the last decade) that does not define __cplusplus but c_plusplus ?
>
>
> I don't know, this was just copy paste from other file.
>
>> Afaict the former is defined since (at least) the 1998 C++ standard,
>> while the latter is extremely rare, and mostly mentioned as decrecated.
>
>
> For me it is ok to drop c_plusplus, no strong opinion.
>
That'll be great. Thanks.

-Emil

Patch
diff mbox

diff --git a/intel/intel_bufmgr.h b/intel/intel_bufmgr.h
index 285919e..f061454 100644
--- a/intel/intel_bufmgr.h
+++ b/intel/intel_bufmgr.h
@@ -38,6 +38,10 @@ 
 #include <stdint.h>
 #include <stdio.h>
 
+#if defined(__cplusplus) || defined(c_plusplus)
+extern "C" {
+#endif
+
 struct drm_clip_rect;
 
 typedef struct _drm_intel_bufmgr drm_intel_bufmgr;
@@ -308,4 +312,8 @@  int drm_intel_get_eu_total(int fd, unsigned int *eu_total);
 
 /** @{ */
 
+#if defined(__cplusplus) || defined(c_plusplus)
+}
+#endif
+
 #endif /* INTEL_BUFMGR_H */