forked from Ports/goldeneye-pc-port
The decomp's src/sched.h (N64 OSSc* scheduler) is on the include path and shadows the system header. libstdc++'s <thread>/<mutex> gthr headers in the fast3d C++ TUs #include <sched.h> and need the real one (cpu_set_t, sched_yield) -- with -std=gnu++20 libstdc++ defines _GNU_SOURCE so <pthread.h> also references cpu_set_t. New shim: C++ -> generated hostsched.h (absolute path, hoststring pattern); C -> #include_next so src/sched.h still wins as before. Windows build verified green (240/241).
10 lines
443 B
C
10 lines
443 B
C
#ifndef PORT_HOSTSCHED_H
|
|
#define PORT_HOSTSCHED_H
|
|
/* Generated by CMake from hostsched.h.in — do not edit.
|
|
* Includes the HOST <sched.h> by absolute path so that port/shim/sched.h can
|
|
* give C++ TUs (fast3d, libstdc++'s <thread>/gthr headers) the real
|
|
* <sched.h> — cpu_set_t, sched_yield — instead of the decomp's src/sched.h,
|
|
* which sits on the include path and would otherwise shadow it. */
|
|
#include "@PORT_HOST_SCHED_H@"
|
|
#endif
|