ssize_t is a GNU extension and is not available on Windows or MacOS. Instead, we use intptr_t which should be effectively equivalent and is part of the C standard. This should fix the Windows and Mac OS builds.
Cc: Jose Fonseca <jfons...@vmware.com> Cc: Vinson Lee <v...@freedesktop.org> Fixes: 3af1c829891a4530682bce113fdd512d4f2de3c6 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=103253 --- src/compiler/blob.c | 8 ++++---- src/compiler/blob.h | 6 +++--- src/intel/vulkan/anv_pipeline_cache.c | 2 +- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/src/compiler/blob.c b/src/compiler/blob.c index f0fa85e..8dd254f 100644 --- a/src/compiler/blob.c +++ b/src/compiler/blob.c @@ -158,10 +158,10 @@ blob_write_bytes(struct blob *blob, const void *bytes, size_t to_write) return true; } -ssize_t +intptr_t blob_reserve_bytes(struct blob *blob, size_t to_write) { - ssize_t ret; + intptr_t ret; if (! grow_to_fit (blob, to_write)) return -1; @@ -172,14 +172,14 @@ blob_reserve_bytes(struct blob *blob, size_t to_write) return ret; } -ssize_t +intptr_t blob_reserve_uint32(struct blob *blob) { align_blob(blob, sizeof(uint32_t)); return blob_reserve_bytes(blob, sizeof(uint32_t)); } -ssize_t +intptr_t blob_reserve_intptr(struct blob *blob) { align_blob(blob, sizeof(intptr_t)); diff --git a/src/compiler/blob.h b/src/compiler/blob.h index f0f28ec..2b975d4 100644 --- a/src/compiler/blob.h +++ b/src/compiler/blob.h @@ -135,7 +135,7 @@ blob_write_bytes(struct blob *blob, const void *bytes, size_t to_write); * \return An offset to space allocated within \blob to which \to_write bytes * can be written, (or -1 in case of any allocation error). */ -ssize_t +intptr_t blob_reserve_bytes(struct blob *blob, size_t to_write); /** @@ -143,7 +143,7 @@ blob_reserve_bytes(struct blob *blob, size_t to_write); * space. Note that this must be used if later reading with \sa * blob_read_uint32, since it aligns the offset correctly. */ -ssize_t +intptr_t blob_reserve_uint32(struct blob *blob); /** @@ -151,7 +151,7 @@ blob_reserve_uint32(struct blob *blob); * space. Note that this must be used if later reading with \sa * blob_read_intptr, since it aligns the offset correctly. */ -ssize_t +intptr_t blob_reserve_intptr(struct blob *blob); /** diff --git a/src/intel/vulkan/anv_pipeline_cache.c b/src/intel/vulkan/anv_pipeline_cache.c index ad9c810..82551e9 100644 --- a/src/intel/vulkan/anv_pipeline_cache.c +++ b/src/intel/vulkan/anv_pipeline_cache.c @@ -449,7 +449,7 @@ VkResult anv_GetPipelineCacheData( blob_write_bytes(&blob, &header, sizeof(header)); uint32_t count = 0; - ssize_t count_offset = blob_reserve_uint32(&blob); + intptr_t count_offset = blob_reserve_uint32(&blob); if (count_offset < 0) { *pDataSize = 0; blob_finish(&blob); -- 2.5.0.400.gff86faf _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev