diff -ur src-for-exe/bitstream/bitstream.c src-ori/bitstream/bitstream.c
--- src-for-exe/bitstream/bitstream.c	Wed Jan 12 10:54:00 2005
+++ src-ori/bitstream/bitstream.c	Wed Jan 12 10:57:45 2005
@@ -33,7 +33,8 @@
 #include "mbcoding.h"
 
 
-static uint32_t __inline
+/* multiple definitions when merging all .h files into global_all_dll.h */
+/*static uint32_t __inline
 log2bin(uint32_t value)
 {
 	int n = 0;
@@ -43,7 +44,7 @@
 		n++;
 	}
 	return n;
-}
+}*/
 
 
 static const uint32_t intra_dc_threshold_table[] = {
diff -ur src-for-exe/image/qpel.c src-ori/image/qpel.c
--- src-for-exe/image/qpel.c	Wed Jan 12 10:54:00 2005
+++ src-ori/image/qpel.c	Wed Jan 12 11:25:40 2005
@@ -139,7 +139,7 @@
  * TODO: should be declared elsewhere?
  ****************************************************************************/
 
-XVID_QP_FUNCS xvid_QP_Funcs_C = {
+const XVID_QP_FUNCS xvid_QP_Funcs_C = {
 	H_Pass_16_C, H_Pass_Avrg_16_C, H_Pass_Avrg_Up_16_C,
 	V_Pass_16_C, V_Pass_Avrg_16_C, V_Pass_Avrg_Up_16_C,
 
@@ -147,7 +147,7 @@
 	V_Pass_8_C, V_Pass_Avrg_8_C, V_Pass_Avrg_Up_8_C
 };
 
-XVID_QP_FUNCS xvid_QP_Add_Funcs_C = {
+const XVID_QP_FUNCS xvid_QP_Add_Funcs_C = {
 	H_Pass_16_Add_C, H_Pass_Avrg_16_Add_C, H_Pass_Avrg_Up_16_Add_C,
 	V_Pass_16_Add_C, V_Pass_Avrg_16_Add_C, V_Pass_Avrg_Up_16_Add_C,
 
@@ -174,7 +174,7 @@
 extern XVID_QP_PASS_SIGNATURE(xvid_V_Pass_Avrg_8_mmx);
 extern XVID_QP_PASS_SIGNATURE(xvid_V_Pass_Avrg_Up_8_mmx);
 
-XVID_QP_FUNCS xvid_QP_Funcs_mmx = {
+const XVID_QP_FUNCS xvid_QP_Funcs_mmx = {
 	xvid_H_Pass_16_mmx, xvid_H_Pass_Avrg_16_mmx, xvid_H_Pass_Avrg_Up_16_mmx,
 	xvid_V_Pass_16_mmx, xvid_V_Pass_Avrg_16_mmx, xvid_V_Pass_Avrg_Up_16_mmx,
 
@@ -196,7 +196,7 @@
 extern XVID_QP_PASS_SIGNATURE(xvid_V_Pass_Avrg_8_Add_mmx);
 extern XVID_QP_PASS_SIGNATURE(xvid_V_Pass_Avrg_Up_8_Add_mmx);
 
-XVID_QP_FUNCS xvid_QP_Add_Funcs_mmx = {
+const XVID_QP_FUNCS xvid_QP_Add_Funcs_mmx = {
 	xvid_H_Pass_Add_16_mmx, xvid_H_Pass_Avrg_Add_16_mmx, xvid_H_Pass_Avrg_Up_Add_16_mmx,
 	xvid_V_Pass_Add_16_mmx, xvid_V_Pass_Avrg_Add_16_mmx, xvid_V_Pass_Avrg_Up_Add_16_mmx,
 
diff -ur src-for-exe/image/qpel.h src-ori/image/qpel.h
--- src-for-exe/image/qpel.h	Wed Jan 12 10:54:00 2005
+++ src-ori/image/qpel.h	Wed Jan 12 11:26:28 2005
@@ -66,16 +66,16 @@
  ****************************************************************************/
 extern void xvid_Init_QP();
 
-extern XVID_QP_FUNCS xvid_QP_Funcs_C;       /* for P-frames */
-extern XVID_QP_FUNCS xvid_QP_Add_Funcs_C;   /* for B-frames */
+extern const XVID_QP_FUNCS xvid_QP_Funcs_C;       /* for P-frames */
+extern const XVID_QP_FUNCS xvid_QP_Add_Funcs_C;   /* for B-frames */
 
 #ifdef ARCH_IS_IA32
-extern XVID_QP_FUNCS xvid_QP_Funcs_mmx;
-extern XVID_QP_FUNCS xvid_QP_Add_Funcs_mmx;
+extern const XVID_QP_FUNCS xvid_QP_Funcs_mmx;
+extern const XVID_QP_FUNCS xvid_QP_Add_Funcs_mmx;
 #endif
 
-extern XVID_QP_FUNCS *xvid_QP_Funcs;      /* <- main pointer for enc/dec structure */
-extern XVID_QP_FUNCS *xvid_QP_Add_Funcs;  /* <- main pointer for enc/dec structure */
+extern const XVID_QP_FUNCS *xvid_QP_Funcs;      /* <- main pointer for enc/dec structure */
+extern const XVID_QP_FUNCS *xvid_QP_Add_Funcs;  /* <- main pointer for enc/dec structure */
 
 /*****************************************************************************
  * macros
diff -ur src-for-exe/motion/motion_comp.c src-ori/motion/motion_comp.c
--- src-for-exe/motion/motion_comp.c	Wed Jan 12 10:54:00 2005
+++ src-ori/motion/motion_comp.c	Wed Jan 12 11:40:18 2005
@@ -45,12 +45,12 @@
 
 
 /* This is borrowed from   bitstream.c  until we find a common solution */
-
-static uint32_t __inline
+/* multiple definitions after merging all .h files into global_all_dll.h - defined in gmc.h also! */
+/*static uint32_t __inline
 log2bin(uint32_t value)
-{
+{*/
 /* Changed by Chenm001 */
-#if !defined(_MSC_VER)
+/*#if !defined(_MSC_VER)
 	int n = 0;
 
 	while (value) {
@@ -64,7 +64,7 @@
 		inc eax
 	}
 #endif
-}
+}*/
 
 /*
  * getref: calculate reference image pointer
diff -ur src-for-exe/prediction/mbprediction.c src-ori/prediction/mbprediction.c
--- src-for-exe/prediction/mbprediction.c	Wed Jan 12 10:54:00 2005
+++ src-ori/prediction/mbprediction.c	Wed Jan 12 10:58:23 2005
@@ -447,7 +447,8 @@
 	}
 }
 
-static const VECTOR zeroMV = { 0, 0 };
+/* multiple definitions when merging all .h files into global_all_dll.h */
+//static const VECTOR zeroMV = { 0, 0 };
 
 VECTOR
 get_pmv2(const MACROBLOCK * const mbs,

