diff --git a/doc/building.dox b/doc/building.dox index 018c07f41..a4b6db335 100644 --- a/doc/building.dox +++ b/doc/building.dox @@ -235,19 +235,21 @@ information): - `WITH_GLXCONTEXT` -- GLX context - `WITH_WGLCONTEXT` -- WGL context -There are also a few command-line utilities. They are currently available only -on Linux, Mac OS X and Windows, also disabled by default: +There are also a few command-line utilities, also disabled by default: - `WITH_MAGNUMINFO` - @ref magnum-info "magnum-info" executable, provides - information about the engine and OpenGL capabilities. + information about the engine and OpenGL capabilities. Depends on some + windowless application library. - `WITH_AL_INFO` -- @ref magnum-al-info "magnum-al-info" executable, provides information about OpenAL capabilities. - `WITH_DISTANCEFIELDCONVERTER` - @ref magnum-distancefieldconverter "magnum-distancefieldconverter" executable for converting black&white images to distance field textures. - Enables also building of @ref TextureTools library. + Enables also building of @ref TextureTools library. Available only on + desktop GL, depends on some windowless application library. - `WITH_FONTCONVERTER` - @ref magnum-fontconverter "magnum-fontconverter" executable for converting fonts to raster ones. Enables also building of - @ref Text library. + @ref Text library. Available only on desktop GL, depends on some windowless + application library. Magnum also contains a set of dependency-less plugins for importing essential file formats. Additional plugins are provided in separate plugin repository, diff --git a/src/Magnum/Audio/magnum-al-info.cpp b/src/Magnum/Audio/magnum-al-info.cpp index e3c3c41b2..2910fb77c 100644 --- a/src/Magnum/Audio/magnum-al-info.cpp +++ b/src/Magnum/Audio/magnum-al-info.cpp @@ -50,8 +50,6 @@ Arguments: | Information about Magnum engine and OpenAL capabilities | +---------------------------------------------------------+ -connect(2) call to /dev/shm/jack-1000/default/jack_0 failed (err=No such file or directory) -attempt to connect to server failed Audio Renderer: OpenAL Soft by OpenAL Community OpenAL version: 1.1 ALSOFT 1.17.2 Available devices: diff --git a/src/Magnum/Text/CMakeLists.txt b/src/Magnum/Text/CMakeLists.txt index 0f97736d9..5190538b4 100644 --- a/src/Magnum/Text/CMakeLists.txt +++ b/src/Magnum/Text/CMakeLists.txt @@ -65,12 +65,24 @@ if(WITH_FONTCONVERTER) target_link_libraries(magnum-fontconverter Magnum MagnumText) if(MAGNUM_TARGET_HEADLESS) target_link_libraries(magnum-fontconverter MagnumWindowlessEglApplication) + elseif(CORRADE_TARGET_IOS) + target_link_libraries(magnum-fontconverter MagnumWindowlessIosApplication) elseif(CORRADE_TARGET_APPLE) target_link_libraries(magnum-fontconverter MagnumWindowlessCglApplication) - elseif(CORRADE_TARGET_UNIX AND NOT TARGET_GLES) - target_link_libraries(magnum-fontconverter MagnumWindowlessGlxApplication) - elseif(CORRADE_TARGET_WINDOWS AND NOT TARGET_GLES) - target_link_libraries(magnum-fontconverter MagnumWindowlessWglApplication) + elseif(CORRADE_TARGET_NACL) + target_link_libraries(magnum-fontconverter MagnumWindowlessNaClApplication) + elseif(CORRADE_TARGET_UNIX) + if(MAGNUM_TARGET_GLES AND NOT MAGNUM_TARGET_DESKTOP_GLES) + target_link_libraries(magnum-fontconverter MagnumWindowlessEglApplication) + else() + target_link_libraries(magnum-fontconverter MagnumWindowlessGlxApplication) + endif() + elseif(CORRADE_TARGET_WINDOWS) + if(NOT MAGNUM_TARGET_GLES OR MAGNUM_TARGET_DESKTOP_GLES) + target_link_libraries(magnum-fontconverter MagnumWindowlessWglApplication) + else() + target_link_libraries(magnum-fontconverter MagnumWindowlessWindowsEglApplication) + endif() else() message(FATAL_ERROR "magnum-fontconverter is not available on this platform. Set WITH_FONTCONVERTER to OFF to suppress this warning.") endif() diff --git a/src/Magnum/Text/fontconverter.cpp b/src/Magnum/Text/fontconverter.cpp index cfb866eec..74111c13a 100644 --- a/src/Magnum/Text/fontconverter.cpp +++ b/src/Magnum/Text/fontconverter.cpp @@ -34,6 +34,10 @@ #ifdef MAGNUM_TARGET_HEADLESS #include "Magnum/Platform/WindowlessEglApplication.h" +#elif defined(CORRADE_TARGET_NACL) +#include "Magnum/Platform/WindowlessNaClApplication.h" +#elif defined(CORRADE_TARGET_IOS) +#include "Magnum/Platform/WindowlessIosApplication.h" #elif defined(CORRADE_TARGET_APPLE) #include "Magnum/Platform/WindowlessCglApplication.h" #elif defined(CORRADE_TARGET_UNIX) @@ -43,8 +47,12 @@ #include "Magnum/Platform/WindowlessGlxApplication.h" #endif #elif defined(CORRADE_TARGET_WINDOWS) +#if !defined(MAGNUM_TARGET_GLES) || defined(MAGNUM_TARGET_DESKTOP_GLES) #include "Magnum/Platform/WindowlessWglApplication.h" #else +#include "Magnum/Platform/WindowlessWindowsEglApplication.h" +#endif +#else #error no windowless application available on this platform #endif @@ -58,7 +66,7 @@ namespace Magnum { @section magnum-fontconverter-usage Usage - magnum-fontconverter [-h|--help] --font FONT --converter CONVERTER [--plugin-dir DIR] [--characters CHARACTERS] [--font-size N] [--atlas-size "X Y"] [--output-size "X Y"] [--radius N] [--] input output + magnum-fontconverter [--magnum-...] [-h|--help] --font FONT --converter CONVERTER [--plugin-dir DIR] [--characters CHARACTERS] [--font-size N] [--atlas-size "X Y"] [--output-size "X Y"] [--radius N] [--] input output Arguments: @@ -76,6 +84,7 @@ Arguments: - `--output-size "X Y"` -- output atlas size. If set to zero size, distance field computation will not be used. (default: `"256 256"`) - `--radius N` -- distance field computation radius (default: `24`) +- `--magnum-...` -- engine-specific options (see @ref Context for details) The resulting font files can be then used as specified in the documentation of `converter` plugin. diff --git a/src/Magnum/TextureTools/CMakeLists.txt b/src/Magnum/TextureTools/CMakeLists.txt index e93c999c6..883ed4c87 100644 --- a/src/Magnum/TextureTools/CMakeLists.txt +++ b/src/Magnum/TextureTools/CMakeLists.txt @@ -55,12 +55,24 @@ if(WITH_DISTANCEFIELDCONVERTER) target_link_libraries(magnum-distancefieldconverter Magnum MagnumTextureTools) if(MAGNUM_TARGET_HEADLESS) target_link_libraries(magnum-distancefieldconverter MagnumWindowlessEglApplication) + elseif(CORRADE_TARGET_IOS) + target_link_libraries(magnum-distancefieldconverter MagnumWindowlessIosApplication) elseif(CORRADE_TARGET_APPLE) target_link_libraries(magnum-distancefieldconverter MagnumWindowlessCglApplication) - elseif(CORRADE_TARGET_UNIX AND NOT TARGET_GLES) - target_link_libraries(magnum-distancefieldconverter MagnumWindowlessGlxApplication) - elseif(CORRADE_TARGET_WINDOWS AND NOT TARGET_GLES) - target_link_libraries(magnum-distancefieldconverter MagnumWindowlessWglApplication) + elseif(CORRADE_TARGET_NACL) + target_link_libraries(magnum-distancefieldconverter MagnumWindowlessNaClApplication) + elseif(CORRADE_TARGET_UNIX) + if(MAGNUM_TARGET_GLES AND NOT MAGNUM_TARGET_DESKTOP_GLES) + target_link_libraries(magnum-distancefieldconverter MagnumWindowlessEglApplication) + else() + target_link_libraries(magnum-distancefieldconverter MagnumWindowlessGlxApplication) + endif() + elseif(CORRADE_TARGET_WINDOWS) + if(NOT MAGNUM_TARGET_GLES OR MAGNUM_TARGET_DESKTOP_GLES) + target_link_libraries(magnum-distancefieldconverter MagnumWindowlessWglApplication) + else() + target_link_libraries(magnum-distancefieldconverter MagnumWindowlessWindowsEglApplication) + endif() else() message(FATAL_ERROR "magnum-distancefieldconverter is not available on this platform. Set WITH_DISTANCEFIELDCONVERTER to OFF to suppress this warning.") endif() diff --git a/src/Magnum/TextureTools/distancefieldconverter.cpp b/src/Magnum/TextureTools/distancefieldconverter.cpp index e64d0b52d..47d5e9d90 100644 --- a/src/Magnum/TextureTools/distancefieldconverter.cpp +++ b/src/Magnum/TextureTools/distancefieldconverter.cpp @@ -40,6 +40,10 @@ #ifdef MAGNUM_TARGET_HEADLESS #include "Magnum/Platform/WindowlessEglApplication.h" +#elif defined(CORRADE_TARGET_NACL) +#include "Magnum/Platform/WindowlessNaClApplication.h" +#elif defined(CORRADE_TARGET_IOS) +#include "Magnum/Platform/WindowlessIosApplication.h" #elif defined(CORRADE_TARGET_APPLE) #include "Magnum/Platform/WindowlessCglApplication.h" #elif defined(CORRADE_TARGET_UNIX) @@ -49,8 +53,12 @@ #include "Magnum/Platform/WindowlessGlxApplication.h" #endif #elif defined(CORRADE_TARGET_WINDOWS) +#if !defined(MAGNUM_TARGET_GLES) || defined(MAGNUM_TARGET_DESKTOP_GLES) #include "Magnum/Platform/WindowlessWglApplication.h" #else +#include "Magnum/Platform/WindowlessWindowsEglApplication.h" +#endif +#else #error no windowless application available on this platform #endif @@ -63,7 +71,7 @@ namespace Magnum { @section magnum-distancefieldconverter-usage Usage - magnum-distancefieldconverter [-h|--help] [--importer IMPORTER] [--converter CONVERTER] [--plugin-dir DIR] --output-size "X Y" --radius N [--] input output + magnum-distancefieldconverter [--magnum-...] [-h|--help] [--importer IMPORTER] [--converter CONVERTER] [--plugin-dir DIR] --output-size "X Y" --radius N [--] input output Arguments: @@ -76,6 +84,7 @@ Arguments: Magnum install location) - `--output-size "X Y"` -- size of output image - `--radius N` -- distance field computation radius +- `--magnum-...` -- engine-specific options (see @ref Context for details) Images with @ref PixelFormat::Red, @ref PixelFormat::RGB or @ref PixelFormat::RGBA are accepted on input.