open-src/lib/mesa/solaris-port.patch
changeset 1265 0b5cc5c013e4
parent 1124 7bc7e624f965
child 1351 9ad483eabd22
equal deleted inserted replaced
1264:a3323e4f263f 1265:0b5cc5c013e4
     1 --- src/mesa/drivers/dri/intel/intel_context.h	Thu Feb 10 09:26:20 2011
     1 --- src/mesa/drivers/dri/intel/intel_context.h	Thu Aug 18 08:49:56 2011
     2 +++ src/mesa/drivers/dri/intel/intel_context.h	Thu Feb 10 09:27:22 2011
     2 +++ src/mesa/drivers/dri/intel/intel_context.h	Thu Aug 18 08:52:57 2011
     3 @@ -271,9 +271,13 @@
     3 @@ -304,9 +304,13 @@
     4     driOptionCache optionCache;
     4     driOptionCache optionCache;
     5  };
     5  };
     6  
     6  
     7 +#if defined(__sun)
     7 +#if defined(__sun)
     8 +#include <stdlib.h>
     8 +#include <stdlib.h>
    13  
    13  
    14 -
    14 -
    15  #define SUBPIXEL_X 0.125
    15  #define SUBPIXEL_X 0.125
    16  #define SUBPIXEL_Y 0.125
    16  #define SUBPIXEL_Y 0.125
    17  
    17  
    18 @@ -307,7 +311,7 @@
    18 @@ -364,7 +368,7 @@
    19   * than COPY_DWORDS would:
    19   * than COPY_DWORDS would:
    20   * XXX Put this in src/mesa/main/imports.h ???
    20   * XXX Put this in src/mesa/main/imports.h ???
    21   */
    21   */
    22 -#if defined(i386) || defined(__i386__)
    22 -#if defined(i386) || defined(__i386__)
    23 +#if (defined(i386) || defined(__i386__)) && !(defined(__SOLARIS__) || defined(sun))
    23 +#if (defined(i386) || defined(__i386__)) && !(defined(__SOLARIS__) || defined(sun))
    24  static INLINE void * __memcpy(void * to, const void * from, size_t n)
    24  static INLINE void * __memcpy(void * to, const void * from, size_t n)
    25  {
    25  {
    26     int d0, d1, d2;
    26     int d0, d1, d2;
    27 --- src/mesa/drivers/dri/intel/intel_batchbuffer.h	Thu Feb 10 09:28:18 2011
       
    28 +++ src/mesa/drivers/dri/intel/intel_batchbuffer.h	Thu Feb 10 13:28:05 2011
       
    29 @@ -8,9 +8,9 @@
       
    30  #include "intel_reg.h"
       
    31  
       
    32  #define BATCH_SZ 16384
       
    33 -#define BATCH_RESERVED 16
       
    34 +#define BATCH_RESERVED16 16
       
    35 +#define BATCH_RESERVED4k 4096
       
    36  
       
    37 -
       
    38  struct intel_batchbuffer
       
    39  {
       
    40     struct intel_context *intel;
       
    41 @@ -92,8 +92,12 @@
       
    42  static INLINE GLint
       
    43  intel_batchbuffer_space(struct intel_batchbuffer *batch)
       
    44  {
       
    45 -   return (batch->state_batch_offset - batch->reserved_space) -
       
    46 -      (batch->ptr - batch->map);
       
    47 +   if (batch->intel->intelScreen->deviceID == PCI_CHIP_I865_G)
       
    48 +   	return (batch->state_batch_offset - BATCH_RESERVED16) -
       
    49 +      		(batch->ptr - batch->map);
       
    50 +   else 
       
    51 +   	return (batch->state_batch_offset - BATCH_RESERVED4k) -
       
    52 +      		(batch->ptr - batch->map);
       
    53  }
       
    54  
       
    55  
       
    56 --- src/mesa/drivers/dri/Makefile.template	Thu Feb 10 13:58:58 2011
       
    57 +++ src/mesa/drivers/dri/Makefile.template	Thu Feb 10 14:01:53 2011
       
    58 @@ -1,5 +1,9 @@
       
    59  # -*-makefile-*-
       
    60  
       
    61 +# Needed to specify symbols which are allowed to be undefined when
       
    62 +# linking DRI modules with -z defs
       
    63 +DRI_LIB_DEPS += -Wl,-M,$(TOP)/src/mesa/drivers/dri/mapfile.externs
       
    64 +
       
    65  MESA_MODULES = $(TOP)/src/mesa/libmesa.a
       
    66  
       
    67  COMMON_GALLIUM_SOURCES = \
       
    68 --- src/mesa/drivers/dri/common/dri_util.h	Thu Feb 10 14:04:16 2011
    27 --- src/mesa/drivers/dri/common/dri_util.h	Thu Feb 10 14:04:16 2011
    69 +++ src/mesa/drivers/dri/common/dri_util.h	Thu Feb 10 14:04:54 2011
    28 +++ src/mesa/drivers/dri/common/dri_util.h	Thu Feb 10 14:04:54 2011
    70 @@ -58,6 +58,10 @@
    29 @@ -58,6 +58,10 @@
    71  
    30  
    72  #define GLX_BAD_CONTEXT                    5
    31  #define GLX_BAD_CONTEXT                    5
    86  #include "main/glheader.h"
    45  #include "main/glheader.h"
    87 +#include "dri_util.h"
    46 +#include "dri_util.h"
    88  
    47  
    89  #if defined( __powerpc__ )
    48  #if defined( __powerpc__ )
    90  
    49  
    91 --- src/mesa/drivers/dri/i915/intel_tris.c	Thu Feb 10 14:07:48 2011
    50 --- src/mesa/drivers/dri/i965/brw_draw_upload.c	Thu Aug 18 08:59:09 2011
    92 +++ src/mesa/drivers/dri/i915/intel_tris.c	Thu Feb 10 14:08:17 2011
    51 +++ src/mesa/drivers/dri/i965/brw_draw_upload.c	Thu Aug 18 09:01:56 2011
    93 @@ -325,7 +325,7 @@
    52 @@ -160,7 +160,24 @@
    94   *                    Emit primitives as inline vertices               *
       
    95   ***********************************************************************/
       
    96  
       
    97 -#ifdef __i386__
       
    98 +#if (defined(i386) || defined(__i386__)) && !(defined(__SOLARIS__) || defined(sun))
       
    99  #define COPY_DWORDS( j, vb, vertsize, v )			\
       
   100  do {								\
       
   101     int __tmp;							\
       
   102 --- src/mesa/drivers/dri/i965/brw_draw_upload.c	Thu Feb 10 14:09:00 2011
       
   103 +++ src/mesa/drivers/dri/i965/brw_draw_upload.c	Thu Feb 10 14:09:49 2011
       
   104 @@ -159,7 +159,24 @@
       
   105     BRW_SURFACEFORMAT_R8G8B8A8_SSCALED
    53     BRW_SURFACEFORMAT_R8G8B8A8_SSCALED
   106  };
    54  };
   107  
    55  
   108 +#if defined (sun)
    56 +#if defined (sun)
   109 +/* Solaris does not have ffsll in libc */
    57 +/* Solaris does not have ffsll in libc */
   124 +#endif
    72 +#endif
   125 +
    73 +
   126  /**
    74  /**
   127   * Given vertex array type/size/format/normalized info, return
    75   * Given vertex array type/size/format/normalized info, return
   128   * the appopriate hardware surface type.
    76   * the appopriate hardware surface type.
   129 --- src/mesa/drivers/dri/intel/intel_batchbuffer.c	Thu Feb 10 14:12:23 2011
    77 --- src/mesa/drivers/dri/i915/intel_tris.c	Thu Aug 18 08:58:29 2011
   130 +++ src/mesa/drivers/dri/intel/intel_batchbuffer.c	Thu Feb 10 14:13:06 2011
    78 +++ src/mesa/drivers/dri/i915/intel_tris.c	Thu Aug 18 09:01:06 2011
   131 @@ -49,7 +49,10 @@
    79 @@ -337,7 +337,7 @@
       
    80   *                    Emit primitives as inline vertices               *
       
    81   ***********************************************************************/
   132  
    82  
   133     batch->size = intel->maxBatchSize;
    83 -#ifdef __i386__
   134     batch->ptr = batch->map;
    84 +#if (defined(i386) || defined(__i386__)) && !(defined(__SOLARIS__) || defined(sun))
   135 -   batch->reserved_space = BATCH_RESERVED;
    85  #define COPY_DWORDS( j, vb, vertsize, v )			\
   136 +   if (batch->intel->intelScreen->deviceID == PCI_CHIP_I865_G)
    86  do {								\
   137 +	batch->reserved_space = BATCH_RESERVED16;
    87     int __tmp;							\
   138 +   else
    88 --- src/glx/Makefile	Thu Aug 18 09:02:07 2011
   139 +	batch->reserved_space = BATCH_RESERVED4k;
    89 +++ src/glx/Makefile	Thu Aug 18 09:04:41 2011
   140     batch->dirty_state = ~0;
    90 @@ -80,6 +80,10 @@
   141     batch->state_batch_offset = batch->size;
       
   142  }
       
   143 --- configure.ac	Thu Mar 24 13:20:29 2011
       
   144 +++ configure.ac	Thu Mar 24 13:21:39 2011
       
   145 @@ -150,7 +150,7 @@
       
   146      # Enable -fvisibility=hidden if using a gcc that supports it
       
   147      save_CFLAGS="$CFLAGS"
       
   148      AC_MSG_CHECKING([whether $CC supports -fvisibility=hidden])
       
   149 -    CFLAGS="$CFLAGS -fvisibility=hidden"
       
   150 +    CFLAGS="$CFLAGS"
       
   151      AC_LINK_IFELSE([AC_LANG_PROGRAM()], AC_MSG_RESULT([yes]),
       
   152  		   [CFLAGS="$save_CFLAGS" ; AC_MSG_RESULT([no])]);
       
   153  
       
   154 @@ -163,7 +163,7 @@
       
   155      # Enable -fvisibility=hidden if using a gcc that supports it
       
   156      save_CXXFLAGS="$CXXFLAGS"
       
   157      AC_MSG_CHECKING([whether $CXX supports -fvisibility=hidden])
       
   158 -    CXXFLAGS="$CXXFLAGS -fvisibility=hidden"
       
   159 +    CXXFLAGS="$CXXFLAGS "
       
   160      AC_LINK_IFELSE([AC_LANG_PROGRAM()], AC_MSG_RESULT([yes]),
       
   161  		   [CXXFLAGS="$save_CXXFLAGS" ; AC_MSG_RESULT([no])]);
       
   162  
       
   163 --- configure	Thu Mar 24 13:20:33 2011
       
   164 +++ configure	Thu Mar 24 13:22:08 2011
       
   165 @@ -4884,7 +4884,7 @@
       
   166      save_CFLAGS="$CFLAGS"
       
   167      { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC supports -fvisibility=hidden" >&5
       
   168  $as_echo_n "checking whether $CC supports -fvisibility=hidden... " >&6; }
       
   169 -    CFLAGS="$CFLAGS -fvisibility=hidden"
       
   170 +    CFLAGS="$CFLAGS "
       
   171      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
       
   172  /* end confdefs.h.  */
       
   173  
       
   174 @@ -4916,7 +4916,7 @@
       
   175      save_CXXFLAGS="$CXXFLAGS"
       
   176      { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CXX supports -fvisibility=hidden" >&5
       
   177  $as_echo_n "checking whether $CXX supports -fvisibility=hidden... " >&6; }
       
   178 -    CXXFLAGS="$CXXFLAGS -fvisibility=hidden"
       
   179 +    CXXFLAGS="$CXXFLAGS "
       
   180      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
       
   181  /* end confdefs.h.  */
       
   182  
       
   183 --- src/glx/Makefile	Tue Apr 19 10:57:29 2011
       
   184 +++ src/glx/Makefile	Tue Apr 19 10:58:54 2011
       
   185 @@ -73,6 +73,10 @@
       
   186  
    91  
   187  default: depend $(TOP)/$(LIB_DIR)/$(GL_LIB_NAME)
    92  default: depend $(TOP)/$(LIB_DIR)/$(GL_LIB_NAME)
   188  
    93  
   189 +# Needed to truly hide symbols gcc treats as HIDDEN/INTERNAL but doesn't mark
    94 +# Needed to truly hide symbols gcc treats as HIDDEN/INTERNAL but doesn't mark
   190 +# as hidden in the ELF files properly.
    95 +# as hidden in the ELF files properly.
   191 +GL_LIB_DEPS += -Wl,-M,mapfile.scope
    96 +GL_LIB_DEPS += -Wl,-M,mapfile.scope
   192 +
    97 +
   193  # Make libGL
    98  # Make libGL
   194  $(TOP)/$(LIB_DIR)/$(GL_LIB_NAME): $(OBJECTS) $(GLAPI_LIB) Makefile
    99  $(TOP)/$(LIB_DIR)/$(GL_LIB_NAME): $(OBJECTS) $(GLAPI_LIB) Makefile
   195  	$(MKLIB) -o $(GL_LIB) -linker '$(CXX)' -ldflags '$(LDFLAGS)' \
   100  	$(MKLIB) -o $(GL_LIB) -linker '$(CXX)' -ldflags '$(LDFLAGS)' \
       
   101 --- configure.ac	Thu Aug 18 10:29:24 2011
       
   102 +++ configure.ac	Thu Aug 18 10:31:37 2011
       
   103 @@ -158,7 +158,7 @@
       
   104      # Enable -fvisibility=hidden if using a gcc that supports it
       
   105      save_CFLAGS="$CFLAGS"
       
   106      AC_MSG_CHECKING([whether $CC supports -fvisibility=hidden])
       
   107 -    VISIBILITY_CFLAGS="-fvisibility=hidden"
       
   108 +    VISIBILITY_CFLAGS=""
       
   109      CFLAGS="$CFLAGS $VISIBILITY_CFLAGS"
       
   110      AC_LINK_IFELSE([AC_LANG_PROGRAM()], AC_MSG_RESULT([yes]),
       
   111  		   [VISIBILITY_CFLAGS=""; AC_MSG_RESULT([no])]);
       
   112 @@ -175,7 +175,7 @@
       
   113      # Enable -fvisibility=hidden if using a gcc that supports it
       
   114      save_CXXFLAGS="$CXXFLAGS"
       
   115      AC_MSG_CHECKING([whether $CXX supports -fvisibility=hidden])
       
   116 -    VISIBILITY_CXXFLAGS="-fvisibility=hidden"
       
   117 +    VISIBILITY_CXXFLAGS=""
       
   118      CXXFLAGS="$CXXFLAGS $VISIBILITY_CXXFLAGS"
       
   119      AC_LINK_IFELSE([AC_LANG_PROGRAM()], AC_MSG_RESULT([yes]),
       
   120  		   [VISIBILITY_CXXFLAGS="" ; AC_MSG_RESULT([no])]);
       
   121 --- configure	Thu Aug 18 10:31:34 2011
       
   122 +++ configure	Thu Aug 18 10:32:15 2011
       
   123 @@ -5012,7 +5012,7 @@
       
   124      save_CFLAGS="$CFLAGS"
       
   125      { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC supports -fvisibility=hidden" >&5
       
   126  $as_echo_n "checking whether $CC supports -fvisibility=hidden... " >&6; }
       
   127 -    VISIBILITY_CFLAGS="-fvisibility=hidden"
       
   128 +    VISIBILITY_CFLAGS=""
       
   129      CFLAGS="$CFLAGS $VISIBILITY_CFLAGS"
       
   130      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
       
   131  /* end confdefs.h.  */
       
   132 @@ -5048,7 +5048,7 @@
       
   133      save_CXXFLAGS="$CXXFLAGS"
       
   134      { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CXX supports -fvisibility=hidden" >&5
       
   135  $as_echo_n "checking whether $CXX supports -fvisibility=hidden... " >&6; }
       
   136 -    VISIBILITY_CXXFLAGS="-fvisibility=hidden"
       
   137 +    VISIBILITY_CXXFLAGS=""
       
   138      CXXFLAGS="$CXXFLAGS $VISIBILITY_CXXFLAGS"
       
   139      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
       
   140  /* end confdefs.h.  */
       
   141 --- src/mesa/drivers/dri/Makefile.targets	Fri Jul  8 18:37:10 2011
       
   142 +++ src/mesa/drivers/dri/Makefile.targets	Thu Aug 18 11:09:47 2011
       
   143 @@ -16,7 +16,12 @@
       
   144  
       
   145  default: subdirs lib
       
   146  
       
   147 +DRI_LIB_DEPS += -Wl,-M,$(TOP)/src/mesa/drivers/dri/mapfile.externs
       
   148  
       
   149 +MESA_MODULES = $(TOP)/src/mesa/libmesa.a
       
   150 +
       
   151 +LIBGLSL_MOBULES = $(TOP)/src/glsl/libglsl.a
       
   152 +
       
   153  .PHONY: lib
       
   154  lib: symlinks subdirs depend
       
   155  	@$(MAKE) $(LIBNAME) $(TOP)/$(LIB_DIR)/$(LIBNAME)
       
   156 @@ -24,7 +29,7 @@
       
   157  $(LIBNAME): $(OBJECTS) $(EXTRA_MODULES) $(MESA_MODULES) Makefile \
       
   158  		$(TOP)/src/mesa/drivers/dri/Makefile.targets $(TOP)/src/mesa/drivers/dri/common/dri_test.o
       
   159  	$(MKLIB) -o [email protected] -noprefix -linker '$(CXX)' -ldflags '$(LDFLAGS)' \
       
   160 -		$(OBJECTS) $(EXTRA_MODULES) $(DRI_LIB_DEPS)
       
   161 +		$(OBJECTS) $(EXTRA_MODULES) $(DRI_LIB_DEPS) $(MESA_MODULES) $(LIBGLSL_MOBULES)
       
   162  	$(CXX) $(CFLAGS) -o [email protected] $(TOP)/src/mesa/drivers/dri/common/dri_test.o [email protected] $(DRI_LIB_DEPS)
       
   163  	@rm -f [email protected]
       
   164  	mv -f [email protected] $@
       
   165 
       
   166 --- src/mesa/drivers/dri/intel/intel_context.c	Tue Sep  6 09:26:10 2011
       
   167 +++ src/mesa/drivers/dri/intel/intel_context.c	Tue Sep  6 09:29:16 2011
       
   168 @@ -737,7 +737,7 @@
       
   169     driParseConfigFiles(&intel->optionCache, &intelScreen->optionCache,
       
   170                         sPriv->myNum, (intel->gen >= 4) ? "i965" : "i915");
       
   171     if (intel->gen < 4)
       
   172 -      intel->maxBatchSize = 4096;
       
   173 +      intel->maxBatchSize = 2*4096;
       
   174     else
       
   175        intel->maxBatchSize = sizeof(intel->batch.map);
       
   176  
       
   177 --- src/mesa/drivers/dri/intel/intel_batchbuffer.c	Tue Sep  6 09:28:13 2011
       
   178 +++ src/mesa/drivers/dri/intel/intel_batchbuffer.c	Tue Sep  6 09:30:56 2011
       
   179 @@ -82,7 +82,7 @@
       
   180     intel->batch.bo = drm_intel_bo_alloc(intel->bufmgr, "batchbuffer",
       
   181  					intel->maxBatchSize, 4096);
       
   182  
       
   183 -   intel->batch.reserved_space = BATCH_RESERVED;
       
   184 +   intel->batch.reserved_space = 4096;
       
   185     intel->batch.state_batch_offset = intel->batch.bo->size;
       
   186     intel->batch.used = 0;
       
   187  }