This merge request contains a set of incremental Android-specific fixes aimed at restoring buildability and removing several early runtime regressions when building Wine with modern Android NDK toolchains. The changes are intentionally minimal and focused on correctness and cleanup rather than adding new functionality. Build-related fixes: - Fix missing ffs() declaration by including <strings.h>. - Fix mismatched ANDROID_WindowPosChanged prototype. - Remove leftover drawable_mutex declarations after OpenGL refactoring. - Avoid unsupported pthread mutex attributes on Android. - Export Java-related globals to ensure they remain visible for dlsym with newer NDKs. - Force --rosegment for wine-preloader when supported to avoid excessive ELF size. Runtime-related fixes: - Fix WineAndroid device access by switching to a consistent \Device\WineAndroid path and aligning driver/device object creation. - Fix start_device_callback assignment type to match expected storage. Status: These changes improve build reliability and eliminate some immediate runtime failures, but they do not make wineandroid fully functional yet. This MR is part of an ongoing bring-up effort for modern Android versions and focuses on getting the simplest pieces building and initializing correctly before further functional work. -- v2: wineandroid: force --rosegment for wine-preloader wineandroid: Fix WineAndroid device access path ntdll: Export Java globals for dlsym lookup winepulse: Do not use pthread mutex attributes on Android win32u: Fix wineandroid build after OpenGL drawable refactoring wineandroid: Fix start_device_callback assignment type wineandroid: Drop leftover drawable_mutex after win32u OpenGL changes wineandroid: Fix ANDROID_WindowPosChanged prototype in android.h ntdll: Include <strings.h> for ffs() declaration https://gitlab.winehq.org/wine/wine/-/merge_requests/9977