diff --git a/CMakeLists.txt b/CMakeLists.txt index da0c4779..1a2b8a63 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -207,7 +207,6 @@ if ( CMAKE_COMPILER_IS_GNUCC OR CMAKE_C_COMPILER_ID STREQUAL "Clang" OR CMAKE_C_ endif ( CMAKE_COMPILER_IS_GNUCC OR CMAKE_C_COMPILER_ID STREQUAL "Clang" OR CMAKE_C_COMPILER_ID STREQUAL "Intel" ) # Windows -unset ( WINDOWS_SUPPORT CACHE ) unset ( WINDOWS_LIBS CACHE ) unset ( DSOUND_SUPPORT CACHE ) unset ( WAVEOUT_SUPPORT CACHE ) @@ -222,8 +221,6 @@ if ( WIN32 ) check_include_file ( dsound.h HAVE_DSOUND_H ) check_include_files ( "windows.h;mmsystem.h" HAVE_MMSYSTEM_H ) - set ( WINDOWS_SUPPORT ${HAVE_WINDOWS_H} ) - if ( enable-network ) set ( WINDOWS_LIBS "${WINDOWS_LIBS};ws2_32" ) endif ( enable-network ) diff --git a/cmake_admin/report.cmake b/cmake_admin/report.cmake index 858a0aa5..e8868ce6 100644 --- a/cmake_admin/report.cmake +++ b/cmake_admin/report.cmake @@ -1,215 +1,239 @@ -message( "\n**************************************************************\n" - "Summary:" ) -message( "Build type: " ${CMAKE_BUILD_TYPE} ) -message( "Install Prefix: " ${CMAKE_INSTALL_PREFIX} ) - -if ( LIBSNDFILE_SUPPORT ) - if ( LIBSNDFILE_HASVORBIS ) - message ( "libsndfile: yes (with ogg vorbis support)" ) - else ( LIBSNDFILE_HASVORBIS ) - message ( "libsndfile: yes" ) - endif ( LIBSNDFILE_HASVORBIS ) -else ( LIBSNDFILE_SUPPORT ) - message ( "libsndfile: no (raw audio file rendering only)" ) -endif ( LIBSNDFILE_SUPPORT ) - -if ( DBUS_SUPPORT ) - message ( "D-Bus: yes" ) -else ( DBUS_SUPPORT ) - message ( "D-Bus: no" ) -endif ( DBUS_SUPPORT ) - -if ( PULSE_SUPPORT ) - message ( "PulseAudio: yes" ) -else ( PULSE_SUPPORT ) - message ( "PulseAudio: no" ) -endif ( PULSE_SUPPORT ) - -if ( JACK_SUPPORT ) - message ( "JACK: yes" ) -else ( JACK_SUPPORT ) - message ( "JACK: no" ) -endif ( JACK_SUPPORT ) +set ( AUDIO_MIDI_REPORT "\n" ) if ( ALSA_SUPPORT ) - message ( "ALSA: yes" ) + set ( AUDIO_MIDI_REPORT "${AUDIO_MIDI_REPORT} ALSA: yes\n" ) else ( ALSA_SUPPORT ) - message ( "ALSA: no" ) + set ( AUDIO_MIDI_REPORT "${AUDIO_MIDI_REPORT} ALSA: no\n" ) endif ( ALSA_SUPPORT ) -if ( PORTAUDIO_SUPPORT ) - message ( "PortAudio: yes" ) -else ( PORTAUDIO_SUPPORT ) - message ( "PortAudio: no" ) -endif ( PORTAUDIO_SUPPORT ) - -if ( OSS_SUPPORT ) - message ( "OSS: yes" ) -else ( OSS_SUPPORT ) - message ( "OSS: no" ) -endif ( OSS_SUPPORT ) - -if ( OPENSLES_SUPPORT ) - message ( "OpenSLES: yes" ) -else ( OPENSLES_SUPPORT ) - message ( "OpenSLES: no" ) -endif ( OPENSLES_SUPPORT ) - -if ( OBOE_SUPPORT ) - message ( "Oboe: yes" ) -else ( OBOE_SUPPORT ) - message ( "Oboe: no" ) -endif ( OBOE_SUPPORT ) - -if ( MIDISHARE_SUPPORT ) - message ( "MidiShare: yes" ) -else ( MIDISHARE_SUPPORT ) - message ( "MidiShare: no" ) -endif ( MIDISHARE_SUPPORT ) - if ( COREAUDIO_SUPPORT ) - message ( "CoreAudio: yes" ) + set ( AUDIO_MIDI_REPORT "${AUDIO_MIDI_REPORT} CoreAudio: yes\n" ) else ( COREAUDIO_SUPPORT ) - message ( "CoreAudio: no" ) + set ( AUDIO_MIDI_REPORT "${AUDIO_MIDI_REPORT} CoreAudio: no\n" ) endif ( COREAUDIO_SUPPORT ) if ( COREMIDI_SUPPORT ) - message ( "CoreMIDI: yes" ) + set ( AUDIO_MIDI_REPORT "${AUDIO_MIDI_REPORT} CoreMIDI: yes\n" ) else ( COREMIDI_SUPPORT ) - message ( "CoreMIDI: no" ) + set ( AUDIO_MIDI_REPORT "${AUDIO_MIDI_REPORT} CoreMIDI: no\n" ) endif ( COREMIDI_SUPPORT ) -if ( WINDOWS_SUPPORT ) - message ( "Windows: yes" ) -else ( WINDOWS_SUPPORT ) - message ( "Windows: no" ) -endif ( WINDOWS_SUPPORT ) - if ( DSOUND_SUPPORT ) - message ( "DSound: yes" ) + set ( AUDIO_MIDI_REPORT "${AUDIO_MIDI_REPORT} DSound: yes\n" ) else ( DSOUND_SUPPORT ) - message ( "DSound: no" ) + set ( AUDIO_MIDI_REPORT "${AUDIO_MIDI_REPORT} DSound: no\n" ) endif ( DSOUND_SUPPORT ) +if ( JACK_SUPPORT ) + set ( AUDIO_MIDI_REPORT "${AUDIO_MIDI_REPORT} JACK: yes\n" ) +else ( JACK_SUPPORT ) + set ( AUDIO_MIDI_REPORT "${AUDIO_MIDI_REPORT} JACK: no\n" ) +endif ( JACK_SUPPORT ) + +if ( MIDISHARE_SUPPORT ) + set ( AUDIO_MIDI_REPORT "${AUDIO_MIDI_REPORT} MidiShare: yes\n" ) +else ( MIDISHARE_SUPPORT ) + set ( AUDIO_MIDI_REPORT "${AUDIO_MIDI_REPORT} MidiShare: no\n" ) +endif ( MIDISHARE_SUPPORT ) + +if ( OBOE_SUPPORT ) + set ( AUDIO_MIDI_REPORT "${AUDIO_MIDI_REPORT} Oboe: yes\n" ) +else ( OBOE_SUPPORT ) + set ( AUDIO_MIDI_REPORT "${AUDIO_MIDI_REPORT} Oboe: no\n" ) +endif ( OBOE_SUPPORT ) + +if ( OPENSLES_SUPPORT ) + set ( AUDIO_MIDI_REPORT "${AUDIO_MIDI_REPORT} OpenSLES: yes\n" ) +else ( OPENSLES_SUPPORT ) + set ( AUDIO_MIDI_REPORT "${AUDIO_MIDI_REPORT} OpenSLES: no\n" ) +endif ( OPENSLES_SUPPORT ) + +if ( DART_SUPPORT ) + set ( AUDIO_MIDI_REPORT "${AUDIO_MIDI_REPORT} OS/2 DART: yes\n" ) +else ( DART_SUPPORT ) + set ( AUDIO_MIDI_REPORT "${AUDIO_MIDI_REPORT} OS/2 DART: no\n" ) +endif ( DART_SUPPORT ) + +if ( OSS_SUPPORT ) + set ( AUDIO_MIDI_REPORT "${AUDIO_MIDI_REPORT} OSS: yes\n" ) +else ( OSS_SUPPORT ) + set ( AUDIO_MIDI_REPORT "${AUDIO_MIDI_REPORT} OSS: no\n" ) +endif ( OSS_SUPPORT ) + +if ( PORTAUDIO_SUPPORT ) + set ( AUDIO_MIDI_REPORT "${AUDIO_MIDI_REPORT} PortAudio: yes\n" ) +else ( PORTAUDIO_SUPPORT ) + set ( AUDIO_MIDI_REPORT "${AUDIO_MIDI_REPORT} PortAudio: no\n" ) +endif ( PORTAUDIO_SUPPORT ) + +if ( PULSE_SUPPORT ) + set ( AUDIO_MIDI_REPORT "${AUDIO_MIDI_REPORT} PulseAudio: yes\n" ) +else ( PULSE_SUPPORT ) + set ( AUDIO_MIDI_REPORT "${AUDIO_MIDI_REPORT} PulseAudio: no\n" ) +endif ( PULSE_SUPPORT ) + +if ( SDL2_SUPPORT ) + set ( AUDIO_MIDI_REPORT "${AUDIO_MIDI_REPORT} SDL2: yes\n" ) +else ( SDL2_SUPPORT ) + set ( AUDIO_MIDI_REPORT "${AUDIO_MIDI_REPORT} SDL2: no\n" ) +endif ( SDL2_SUPPORT ) + if ( WAVEOUT_SUPPORT ) - message ( "WaveOut support: yes" ) + set ( AUDIO_MIDI_REPORT "${AUDIO_MIDI_REPORT} WaveOut: yes\n" ) else ( WAVEOUT_SUPPORT ) - message ( "WaveOut support: no" ) + set ( AUDIO_MIDI_REPORT "${AUDIO_MIDI_REPORT} WaveOut: no\n" ) endif ( WAVEOUT_SUPPORT ) if ( WINMIDI_SUPPORT ) - message ( "WinMidi support: yes" ) + set ( AUDIO_MIDI_REPORT "${AUDIO_MIDI_REPORT} WinMidi: yes\n" ) else ( WINMIDI_SUPPORT ) - message ( "WinMidi support: no" ) + set ( AUDIO_MIDI_REPORT "${AUDIO_MIDI_REPORT} WinMidi: no\n" ) endif ( WINMIDI_SUPPORT ) -if ( SDL2_SUPPORT ) - message ( "SDL2 support: yes" ) -else ( SDL2_SUPPORT ) - message ( "SDL2 support: no" ) -endif ( SDL2_SUPPORT ) + +set ( INPUTS_REPORT "\n" ) + +set ( INPUTS_REPORT "${INPUTS_REPORT}Support for SF3 files: " ) +if ( LIBSNDFILE_HASVORBIS ) + set ( INPUTS_REPORT "${INPUTS_REPORT}yes\n" ) +elseif ( NOT LIBSNDFILE_SUPPORT ) + set ( INPUTS_REPORT "${INPUTS_REPORT}no (libsndfile not found)\n" ) +elseif ( NOT LIBSNDFILE_HASVORBIS ) + set ( INPUTS_REPORT "${INPUTS_REPORT}no (libsndfile has no ogg vorbis support)\n" ) +endif ( LIBSNDFILE_HASVORBIS ) + + +set ( INPUTS_REPORT "${INPUTS_REPORT}Support for DLS files: " ) +if ( LIBINSTPATCH_SUPPORT ) + set ( INPUTS_REPORT "${INPUTS_REPORT}yes\n" ) +else ( LIBINSTPATCH_SUPPORT ) + set ( INPUTS_REPORT "${INPUTS_REPORT}no (libinstpatch not found)\n" ) +endif ( LIBINSTPATCH_SUPPORT ) + + +set ( RENDERING_REPORT "\n" ) + +if ( AUFILE_SUPPORT ) + set ( RENDERING_REPORT "${RENDERING_REPORT}Audio to file rendering: yes\n" ) +else ( AUFILE_SUPPORT ) + set ( RENDERING_REPORT "${RENDERING_REPORT}Audio to file rendering: no\n" ) +endif ( AUFILE_SUPPORT ) + +if ( LIBSNDFILE_SUPPORT ) + set ( RENDERING_REPORT "${RENDERING_REPORT} libsndfile: yes\n" ) +else ( LIBSNDFILE_SUPPORT ) + set ( RENDERING_REPORT "${RENDERING_REPORT} libsndfile: no (RAW PCM rendering only)\n" ) +endif ( LIBSNDFILE_SUPPORT ) + + +set ( MISC_REPORT "\nMiscellaneous support:\n" ) + +if ( DBUS_SUPPORT ) + set ( MISC_REPORT "${MISC_REPORT} D-Bus: yes\n" ) +else ( DBUS_SUPPORT ) + set ( MISC_REPORT "${MISC_REPORT} D-Bus: no\n" ) +endif ( DBUS_SUPPORT ) if ( LADSPA_SUPPORT ) - message ( "LADSPA support: yes" ) + set ( MISC_REPORT "${MISC_REPORT} LADSPA support: yes\n" ) else ( LADSPA_SUPPORT ) - message ( "LADSPA support: no" ) + set ( MISC_REPORT "${MISC_REPORT} LADSPA support: no\n" ) endif ( LADSPA_SUPPORT ) if ( LASH_SUPPORT ) - message ( "LASH support: yes (NOTE: GPL library)" ) + set ( MISC_REPORT "${MISC_REPORT} LASH support: yes (NOTE: GPL library)\n" ) else ( LASH_SUPPORT ) - message ( "LASH support: no" ) + set ( MISC_REPORT "${MISC_REPORT} LASH support: no\n" ) endif ( LASH_SUPPORT ) -if ( SYSTEMD_SUPPORT ) - message ( "systemd support: yes" ) -else ( SYSTEMD_SUPPORT ) - message ( "systemd support: no" ) -endif ( SYSTEMD_SUPPORT ) - -if ( DART_SUPPORT ) - message ( "OS/2 DART support: yes" ) -else ( DART_SUPPORT ) - message ( "OS/2 DART support: no" ) -endif ( DART_SUPPORT ) - -if ( AUFILE_SUPPORT ) - message ( "Audio to file driver: yes" ) -else ( AUFILE_SUPPORT ) - message ( "Audio to file driver: no" ) -endif ( AUFILE_SUPPORT ) - if ( NETWORK_SUPPORT ) - message ( "NETWORK Support : yes" ) + set ( MISC_REPORT "${MISC_REPORT} NETWORK Support: yes\n" ) else ( NETWORK_SUPPORT ) - message ( "NETWORK Support : no" ) + set ( MISC_REPORT "${MISC_REPORT} NETWORK Support: no\n" ) endif ( NETWORK_SUPPORT ) if ( IPV6_SUPPORT ) - message ( "IPV6 Support : yes" ) + set ( MISC_REPORT "${MISC_REPORT} IPV6 Support: yes\n" ) else ( IPV6_SUPPORT ) - message ( "IPV6 Support : no" ) + set ( MISC_REPORT "${MISC_REPORT} IPV6 Support: no\n" ) endif ( IPV6_SUPPORT ) if ( WITH_READLINE ) - message ( "Readline: yes (NOTE: GPL library)" ) + set ( MISC_REPORT "${MISC_REPORT} Readline: yes (NOTE: GPL library)\n" ) else ( WITH_READLINE ) - message ( "Readline: no" ) + set ( MISC_REPORT "${MISC_REPORT} Readline: no\n" ) endif ( WITH_READLINE ) -if ( LIBINSTPATCH_SUPPORT ) - message ( "libinstpatch: yes" ) -else ( LIBINSTPATCH_SUPPORT ) - message ( "libinstpatch: no" ) -endif ( LIBINSTPATCH_SUPPORT ) +if ( SYSTEMD_SUPPORT ) + set ( MISC_REPORT "${MISC_REPORT} systemd: yes\n" ) +else ( SYSTEMD_SUPPORT ) + set ( MISC_REPORT "${MISC_REPORT} systemd: no\n" ) +endif ( SYSTEMD_SUPPORT ) + + +set ( DEVEL_REPORT "\nDeveloper nerds info:\n" ) if ( WITH_FLOAT ) - message ( "Samples type=float: yes" ) + set ( DEVEL_REPORT "${DEVEL_REPORT} Samples type: float\n" ) else ( WITH_FLOAT ) - message ( "Samples type=float: no (using double)" ) + set ( DEVEL_REPORT "${DEVEL_REPORT} Samples type: double\n" ) endif ( WITH_FLOAT ) -if ( WITH_PROFILING ) - message ( "Profiling: yes" ) -else ( WITH_PROFILING ) - message ( "Profiling: no" ) -endif ( WITH_PROFILING ) - -if ( HAVE_OPENMP ) - message ( "OpenMP 4.0: yes" ) -else ( HAVE_OPENMP ) - message ( "OpenMP 4.0: no" ) -endif ( HAVE_OPENMP ) - if ( ENABLE_MIXER_THREADS ) - message ( "Multi-thread support yes" ) + set ( DEVEL_REPORT "${DEVEL_REPORT} Multithread rendering: yes\n" ) else ( ENABLE_MIXER_THREADS ) - message ( "Multi-thread support no" ) + set ( DEVEL_REPORT "${DEVEL_REPORT} Multithread rendering: no\n" ) endif ( ENABLE_MIXER_THREADS ) +if ( HAVE_OPENMP ) + set ( DEVEL_REPORT "${DEVEL_REPORT} OpenMP 4.0: yes\n" ) +else ( HAVE_OPENMP ) + set ( DEVEL_REPORT "${DEVEL_REPORT} OpenMP 4.0: no\n" ) +endif ( HAVE_OPENMP ) + +if ( WITH_PROFILING ) + set ( DEVEL_REPORT "${DEVEL_REPORT} Profiling: yes\n" ) +else ( WITH_PROFILING ) + set ( DEVEL_REPORT "${DEVEL_REPORT} Profiling: no\n" ) +endif ( WITH_PROFILING ) + if ( ENABLE_DEBUG ) - message ( "Debug: yes" ) + set ( DEVEL_REPORT "${DEVEL_REPORT} Debug Build: yes\n" ) else ( ENABLE_DEBUG ) - message ( "Debug: no" ) + set ( DEVEL_REPORT "${DEVEL_REPORT} Debug Build: no\n" ) endif ( ENABLE_DEBUG ) if ( ENABLE_TRAPONFPE ) - message ( "Trap on FPE (debug): yes" ) + set ( DEVEL_REPORT "${DEVEL_REPORT} Trap on FPE (debug): yes\n" ) else ( ENABLE_TRAPONFPE ) - message ( "Trap on FPE (debug): no" ) + set ( DEVEL_REPORT "${DEVEL_REPORT} Trap on FPE (debug): no\n" ) endif ( ENABLE_TRAPONFPE ) if ( ENABLE_FPECHECK ) - message ( "Check FPE (debug): yes" ) + set ( DEVEL_REPORT "${DEVEL_REPORT} Check FPE (debug): yes\n" ) else ( ENABLE_FPECHECK ) - message ( "Check FPE (debug): no" ) + set ( DEVEL_REPORT "${DEVEL_REPORT} Check FPE (debug): no\n" ) endif ( ENABLE_FPECHECK ) if ( ENABLE_UBSAN ) - message ( "UBSan (debug): yes" ) + set ( DEVEL_REPORT "${DEVEL_REPORT} UBSan (debug): yes\n" ) else ( ENABLE_UBSAN ) - message ( "UBSan (debug): no" ) + set ( DEVEL_REPORT "${DEVEL_REPORT} UBSan (debug): no\n" ) endif ( ENABLE_UBSAN ) +message( STATUS + "\n**************************************************************\n" + "Build Summary:\n" + "Build type: " ${CMAKE_BUILD_TYPE} "\n" + "Install Prefix: " ${CMAKE_INSTALL_PREFIX} "\n" + "\n" + "Audio / MIDI driver support:" + ${AUDIO_MIDI_REPORT} + ${INPUTS_REPORT} + ${RENDERING_REPORT} + ${MISC_REPORT} + ${DEVEL_REPORT} + ) + message ( "**************************************************************\n\n" )