marioballano / emudore

emudore, a Commodore 64 emulator
Apache License 2.0
303 stars 21 forks source link

Building without thread support? #17

Open danboid opened 4 years ago

danboid commented 4 years ago

The README states emudore is single threaded so how would I build it without threads? I'm trying to build it for Serenity which doesn't have complete pthreads support yet.

I have tried commenting out the thread related bits in FindSDL2.cmake but I still get this error:

[ 70%] Building CXX object CMakeFiles/emudore.dir/src/io.cpp.o
/home/local/ISDADS/sgs548/src/serenity/Ports/emudore/emudore-master/src/io.cpp: In member function 'void IO::handle_keydown(SDL_Keycode)':
/home/local/ISDADS/sgs548/src/serenity/Ports/emudore/emudore-master/src/io.cpp:284:20: warning: catching polymorphic type 'const class std::out_of_range' by value [-Wcatch-value=]
   catch(const std::out_of_range){}
                    ^~~~~~~~~~~~
/home/local/ISDADS/sgs548/src/serenity/Ports/emudore/emudore-master/src/io.cpp: In member function 'void IO::handle_keyup(SDL_Keycode)':
/home/local/ISDADS/sgs548/src/serenity/Ports/emudore/emudore-master/src/io.cpp:297:20: warning: catching polymorphic type 'const class std::out_of_range' by value [-Wcatch-value=]
   catch(const std::out_of_range){}
                    ^~~~~~~~~~~~
/home/local/ISDADS/sgs548/src/serenity/Ports/emudore/emudore-master/src/io.cpp: In member function 'void IO::type_character(char)':
/home/local/ISDADS/sgs548/src/serenity/Ports/emudore/emudore-master/src/io.cpp:315:20: warning: catching polymorphic type 'const class std::out_of_range' by value [-Wcatch-value=]
   catch(const std::out_of_range){}
                    ^~~~~~~~~~~~
/home/local/ISDADS/sgs548/src/serenity/Ports/emudore/emudore-master/src/io.cpp: In member function 'void IO::vsync()':
/home/local/ISDADS/sgs548/src/serenity/Ports/emudore/emudore-master/src/io.cpp:376:8: error: 'std::this_thread' has not been declared
   std::this_thread::sleep_for(ttw);
        ^~~~~~~~~~~
CMakeFiles/emudore.dir/build.make:206: recipe for target 'CMakeFiles/emudore.dir/src/io.cpp.o' failed
make[3]: *** [CMakeFiles/emudore.dir/src/io.cpp.o] Error 1
make[3]: Leaving directory '/home/local/ISDADS/sgs548/src/serenity/Ports/emudore/emudore-master/build'
CMakeFiles/Makefile2:67: recipe for target 'CMakeFiles/emudore.dir/all' failed
make[2]: *** [CMakeFiles/emudore.dir/all] Error 2
make[2]: Leaving directory '/home/local/ISDADS/sgs548/src/serenity/Ports/emudore/emudore-master/build'
Makefile:83: recipe for target 'all' failed
make[1]: *** [all] Error 2
make[1]: Leaving directory '/home/local/ISDADS/sgs548/src/serenity/Ports/emudore/emudore-master/build'
Makefile:2: recipe for target 'release' failed
make: *** [release] Error 2