Merge branch 'master' into enable_libusb

This commit is contained in:
Fred Hallock 2025-03-23 17:16:31 -04:00 committed by GitHub
commit 583974d7ac
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
5 changed files with 14 additions and 24 deletions

View File

@ -315,8 +315,7 @@ jobs:
brew install \
ccache \
coreutils \
dylibbundler \
ninja
dylibbundler
pip install pyyaml requests
- name: Initialize compiler, library cache
id: cache

15
configure vendored
View File

@ -1191,17 +1191,6 @@ EOF
fi
fi
##########################################
# epoxy probe
if $pkg_config --libs --silence-errors epoxy > /dev/null 2>&1 ; then
epoxy_libs=$($pkg_config --libs --silence-errors epoxy)
epoxy_cflags=$($pkg_config --cflags --silence-errors epoxy)
else
error_exit "epoxy not present." \
"Please install the epoxy devel package."
fi
##########################################
# detect rust triple
@ -1807,10 +1796,6 @@ if test "$default_targets" = "yes"; then
echo "CONFIG_DEFAULT_TARGETS=y" >> $config_host_mak
fi
# FIXME: Use meson
echo "EPOXY_CFLAGS=$epoxy_cflags" >> $config_host_mak
echo "EPOXY_LIBS=$epoxy_libs" >> $config_host_mak
# tests/tcg configuration
mkdir -p tests/tcg
echo "# Automatically generated by configure - do not modify" > tests/tcg/$config_host_mak

View File

@ -49,9 +49,12 @@ void pgraph_vk_update_vertex_ram_buffer(PGRAPHState *pg, hwaddr offset,
pgraph_vk_download_surfaces_in_range_if_dirty(pg, offset, size);
size_t offset_bit = offset / 4096;
size_t nbits = size / 4096;
if (find_next_bit(r->uploaded_bitmap, nbits, offset_bit) < nbits) {
size_t start_bit = offset / TARGET_PAGE_SIZE;
size_t end_bit = TARGET_PAGE_ALIGN(offset + size) / TARGET_PAGE_SIZE;
size_t nbits = end_bit - start_bit;
if (find_next_bit(r->uploaded_bitmap, start_bit + nbits, start_bit) <
end_bit) {
// Vertex data changed while building the draw list. Finish drawing
// before updating RAM buffer.
pgraph_vk_finish(pg, VK_FINISH_REASON_VERTEX_BUFFER_DIRTY);
@ -60,7 +63,7 @@ void pgraph_vk_update_vertex_ram_buffer(PGRAPHState *pg, hwaddr offset,
nv2a_profile_inc_counter(NV2A_PROF_GEOM_BUFFER_UPDATE_1);
memcpy(r->storage_buffers[BUFFER_VERTEX_RAM].mapped + offset, data, size);
bitmap_set(r->uploaded_bitmap, offset_bit, nbits);
bitmap_set(r->uploaded_bitmap, start_bit, nbits);
}
static void update_memory_buffer(NV2AState *d, hwaddr addr, hwaddr size)

View File

@ -1774,6 +1774,8 @@ if not get_option('coreaudio').auto() or (host_os == 'darwin' and have_system)
required: get_option('coreaudio'))
endif
epoxy = dependency('epoxy', required: true)
opengl = not_found
if not get_option('opengl').auto() or have_system or have_vhost_user_gpu
# FIXME: Use meson's 'gl' dep
@ -1787,8 +1789,7 @@ if not get_option('opengl').auto() or have_system or have_vhost_user_gpu
error('Unknown GL platform')
endif
opengl = declare_dependency(compile_args: config_host['EPOXY_CFLAGS'].split(),
link_args: config_host['EPOXY_LIBS'].split() + opengl_libs)
opengl = declare_dependency(link_args: opengl_libs, dependencies: epoxy)
endif
gbm = not_found

View File

@ -149,7 +149,9 @@ class LibInstaller:
if pkg_name.startswith('openssl'): # FIXME
new_prefix = f'prefix={self._extract_path}/opt/local/libexec/openssl11\n'
lines[i] = new_prefix
break
elif l.strip().startswith('Requires.private:'):
if pkg_name.startswith('libepoxy'):
lines[i] = ''
with open(extracted_path, 'w') as f:
f.write(''.join(lines))