diff --git a/doc/changelog.dox b/doc/changelog.dox index 9d3180459..a8b99d2ac 100644 --- a/doc/changelog.dox +++ b/doc/changelog.dox @@ -151,7 +151,8 @@ namespace Magnum { - Floating-point audio support in @ref Audio::Buffer - @ref Audio::WavImporter "WavAudioImporter" plugin now supports more formats, is more flexible and gives better errors -- New @ref magnum-al-info "magnum-al-info" utility +- New @ref magnum-al-info "magnum-al-info" utility, available for all desktop + platforms and Emscripten ### DebugTools library diff --git a/package/archlinux/PKGBUILD-emscripten b/package/archlinux/PKGBUILD-emscripten index 7318a46b1..27ce89965 100644 --- a/package/archlinux/PKGBUILD-emscripten +++ b/package/archlinux/PKGBUILD-emscripten @@ -38,6 +38,7 @@ build() { -DWITH_TGAIMPORTER=ON \ -DWITH_WAVAUDIOIMPORTER=ON \ -DWITH_MAGNUMINFO=ON \ + -DWITH_AL_INFO=ON \ -DBUILD_TESTS=ON ninja } diff --git a/package/archlinux/PKGBUILD-emscripten-noopt b/package/archlinux/PKGBUILD-emscripten-noopt index ab18c794d..41f2db6ea 100644 --- a/package/archlinux/PKGBUILD-emscripten-noopt +++ b/package/archlinux/PKGBUILD-emscripten-noopt @@ -40,6 +40,7 @@ build() { -DWITH_TGAIMPORTER=ON \ -DWITH_WAVAUDIOIMPORTER=ON \ -DWITH_MAGNUMINFO=ON \ + -DWITH_AL_INFO=ON \ -DBUILD_TESTS=ON ninja } diff --git a/package/archlinux/PKGBUILD-emscripten-noopt-webgl2 b/package/archlinux/PKGBUILD-emscripten-noopt-webgl2 index cece9ad96..63ac43f38 100644 --- a/package/archlinux/PKGBUILD-emscripten-noopt-webgl2 +++ b/package/archlinux/PKGBUILD-emscripten-noopt-webgl2 @@ -41,6 +41,7 @@ build() { -DWITH_TGAIMPORTER=ON \ -DWITH_WAVAUDIOIMPORTER=ON \ -DWITH_MAGNUMINFO=ON \ + -DWITH_AL_INFO=ON \ -DBUILD_TESTS=ON ninja } diff --git a/package/archlinux/PKGBUILD-emscripten-wasm b/package/archlinux/PKGBUILD-emscripten-wasm index 513eb4f2d..3bc6adc29 100644 --- a/package/archlinux/PKGBUILD-emscripten-wasm +++ b/package/archlinux/PKGBUILD-emscripten-wasm @@ -38,6 +38,7 @@ build() { -DWITH_TGAIMPORTER=ON \ -DWITH_WAVAUDIOIMPORTER=ON \ -DWITH_MAGNUMINFO=ON \ + -DWITH_AL_INFO=ON \ -DBUILD_TESTS=ON ninja } diff --git a/package/archlinux/PKGBUILD-emscripten-wasm-webgl2 b/package/archlinux/PKGBUILD-emscripten-wasm-webgl2 index 0d3674684..c6ed3ce8c 100644 --- a/package/archlinux/PKGBUILD-emscripten-wasm-webgl2 +++ b/package/archlinux/PKGBUILD-emscripten-wasm-webgl2 @@ -39,6 +39,7 @@ build() { -DWITH_TGAIMPORTER=ON \ -DWITH_WAVAUDIOIMPORTER=ON \ -DWITH_MAGNUMINFO=ON \ + -DWITH_AL_INFO=ON \ -DBUILD_TESTS=ON ninja } diff --git a/package/archlinux/PKGBUILD-emscripten-webgl2 b/package/archlinux/PKGBUILD-emscripten-webgl2 index 67ee9fd0e..43c08f23c 100644 --- a/package/archlinux/PKGBUILD-emscripten-webgl2 +++ b/package/archlinux/PKGBUILD-emscripten-webgl2 @@ -39,6 +39,7 @@ build() { -DWITH_TGAIMPORTER=ON \ -DWITH_WAVAUDIOIMPORTER=ON \ -DWITH_MAGNUMINFO=ON \ + -DWITH_AL_INFO=ON \ -DBUILD_TESTS=ON ninja } diff --git a/package/ci/travis-emscripten.sh b/package/ci/travis-emscripten.sh index 99eb87016..51794305a 100755 --- a/package/ci/travis-emscripten.sh +++ b/package/ci/travis-emscripten.sh @@ -56,6 +56,7 @@ cmake .. \ -DWITH_TGAIMPORTER=ON \ -DWITH_WAVAUDIOIMPORTER=ON \ -DWITH_MAGNUMINFO=ON \ + -DWITH_AL_INFO=ON \ -DBUILD_TESTS=ON \ -DTARGET_GLES2=$TARGET_GLES2 # Otherwise the job gets killed (probably because using too much memory) diff --git a/src/Magnum/Audio/CMakeLists.txt b/src/Magnum/Audio/CMakeLists.txt index 219021fcd..8db785be8 100644 --- a/src/Magnum/Audio/CMakeLists.txt +++ b/src/Magnum/Audio/CMakeLists.txt @@ -84,13 +84,26 @@ if(WITH_AL_INFO) target_link_libraries(magnum-al-info MagnumAudio) set_target_properties(magnum-al-info PROPERTIES FOLDER "Magnum/Audio") - install(TARGETS magnum-al-info DESTINATION ${MAGNUM_BINARY_INSTALL_DIR}) + if(NOT MAGNUM_TARGET_EMSCRIPTEN) + install(TARGETS magnum-al-info DESTINATION ${MAGNUM_BINARY_INSTALL_DIR}) + endif() if(CORRADE_TARGET_IOS) set_target_properties(magnum-al-info PROPERTIES MACOSX_BUNDLE ON MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_SOURCE_DIR}/MacOSXBundleInfo.plist.in XCODE_ATTRIBUTE_CODE_SIGNING_REQUIRED "YES") + elseif(CORRADE_TARGET_EMSCRIPTEN) + install(FILES magnum-al-info.html DESTINATION ${MAGNUM_DEPLOY_PREFIX}/magnum-al-info RENAME index.html) + install(TARGETS magnum-al-info DESTINATION ${MAGNUM_DEPLOY_PREFIX}/magnum-al-info) + install(FILES + ${CMAKE_SOURCE_DIR}/src/Magnum/Platform/WebApplication.css + ${CMAKE_SOURCE_DIR}/src/Magnum/Platform/WindowlessEmscriptenApplication.js + DESTINATION ${MAGNUM_DEPLOY_PREFIX}/magnum-al-info) + install(FILES + ${CMAKE_CURRENT_BINARY_DIR}/magnum-al-info.js.mem + ${CMAKE_CURRENT_BINARY_DIR}/magnum-al-info.wasm + DESTINATION ${MAGNUM_DEPLOY_PREFIX}/magnum-al-info OPTIONAL) endif() # Magnum AL info target alias for superprojects diff --git a/src/Magnum/Audio/magnum-al-info.html b/src/Magnum/Audio/magnum-al-info.html new file mode 100644 index 000000000..439e1a16d --- /dev/null +++ b/src/Magnum/Audio/magnum-al-info.html @@ -0,0 +1,18 @@ + + +
+