Hi Dominique,

On Monday 25 May 2009 07:54:36 Dominique Leuenberger wrote:
> Hi mates,
>
> Just one question:
> Is there already a patch for the open-vm-tools (2009.05.22) for Kernel
> 2.6.30 available?
>
> for now I see it failing with:
> sing 2.6.x kernel build system.
> CC [M]
> /usr/src/packages/BUILD/obj/debug/modules/linux/vmblock/linux/block.o In
> file included from
> /usr/src/packages/BUILD/obj/debug/modules/linux/vmblock/linux/vmblockInt.h:
>40, from
> /usr/src/packages/BUILD/obj/debug/modules/linux/vmblock/linux/block.c:30:
> /usr/src/packages/BUILD/obj/debug/modules/linux/vmblock/include/vm_basic_ty
>pes.h:145:7: warning: "__FreeBSD__" is not defined CC [M]
> /usr/src/packages/BUILD/obj/debug/modules/linux/vmblock/linux/control.o In
> file included from
> /usr/src/packages/BUILD/obj/debug/modules/linux/vmblock/linux/vmblockInt.h:
>40, from
> /usr/src/packages/BUILD/obj/debug/modules/linux/vmblock/linux/control.c:33:
> /usr/src/packages/BUILD/obj/debug/modules/linux/vmblock/include/vm_basic_ty
>pes.h:145:7: warning: "__FreeBSD__" is not defined
> /usr/src/packages/BUILD/obj/debug/modules/linux/vmblock/linux/control.c: In
> function 'SetupProcDevice':
> /usr/src/packages/BUILD/obj/debug/modules/linux/vmblock/linux/control.c:159
>: error: 'struct proc_dir_entry' has no member named 'owner'
> /usr/src/packages/BUILD/obj/debug/modules/linux/vmblock/linux/control.c:171
>: error: 'struct proc_dir_entry' has no member named 'owner' make[3]: ***
> [/usr/src/packages/BUILD/obj/debug/modules/linux/vmblock/linux/control.o]
> Error 1 make[2]: ***
> [_module_/usr/src/packages/BUILD/obj/debug/modules/linux/vmblock] Error 2
> make[1]: *** [sub-make] Error 2
> make: *** [all] Error 2
> make: Leaving directory `/usr/src/linux-2.6.30-rc6-git3-3-obj/x86_64/debug'
> error: Bad exit status from /var/tmp/rpm-tmp.62886 (%build)
>

The following patch should help with 'undefined macro' errors.

Thanks,
Dmitry

--- vm_basic_types.h.orig
+++ vm_basic_types.h
@@ -113,12 +113,12 @@ typedef char int8;
 
 #else /* !HAVE_STDINT_H */
 
-#ifdef _MSC_VER
+#if defined(_MSC_VER)
 
 typedef unsigned __int64 uint64;
 typedef signed __int64 int64;
 
-#elif __GNUC__
+#elif defined(__GNUC__)
 /* The Xserver source compiles with -ansi -pendantic */
 #ifndef __STRICT_ANSI__
 #if defined(VM_X86_64)
@@ -128,7 +128,7 @@ typedef long int64;
 typedef unsigned long long uint64;
 typedef long long int64;
 #endif
-#elif __FreeBSD__
+#elif defined(__FreeBSD__)
 typedef unsigned long long uint64;
 typedef long long int64;
 #endif
@@ -261,7 +261,7 @@ typedef int64 VmTimeVirtualClock;  /* Vi
    #define FMTSZ "z"
    #define FMTPD "l"
    #define FMTH ""
-#elif __GNUC__
+#elif defined(__GNUC__)
    #define FMTH ""
    #if defined(N_PLAT_NLM) || defined(sun) || \
        (defined(__FreeBSD__) && (__FreeBSD__ + 0) && ((__FreeBSD__ + 0) < 5))
@@ -600,7 +600,8 @@ typedef void * UserVA;
  * are added the inline-ness should be removed.
  */
 
-#if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 3)
+#if defined(__GNUC__) && \
+    (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 3))
 /*
  * Starting at version 3.3, gcc does not always inline functions marked
  * 'inline' (it depends on their size). To force gcc to do so, one must use 
the
@@ -633,7 +634,8 @@ typedef void * UserVA;
 
 #ifdef _MSC_VER
 #define NORETURN __declspec(noreturn)
-#elif __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 9)
+#elif defined(__GNUC__) && \
+      (__GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 9))
 #define NORETURN __attribute__((__noreturn__))
 #else
 #define NORETURN
@@ -644,7 +646,8 @@ typedef void * UserVA;
  * Older GCCs don't know about it --hpreg
  */
 
-#if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 2)
+#if defined(__GNUC__) && \
+    (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 2))
 #   define VM_ASM_PLUS 1
 #else
 #   define VM_ASM_PLUS 0
@@ -663,7 +666,7 @@ typedef void * UserVA;
  * all others we don't so we do nothing.
  */
 
-#if (__GNUC__ >= 3)
+#if defined(__GNUC__) && (__GNUC__ >= 3)
 /*
  * gcc3 uses __builtin_expect() to inform the compiler of an expected value.
  * We use this to inform the static branch predictor. The '!!' in LIKELY




------------------------------------------------------------------------------
Register Now for Creativity and Technology (CaT), June 3rd, NYC. CaT 
is a gathering of tech-side developers & brand creativity professionals. Meet
the minds behind Google Creative Lab, Visual Complexity, Processing, & 
iPhoneDevCamp as they present alongside digital heavyweights like Barbarian 
Group, R/GA, & Big Spaceship. http://p.sf.net/sfu/creativitycat-com 
_______________________________________________
open-vm-tools-devel mailing list
open-vm-tools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/open-vm-tools-devel

Reply via email to