diff --git a/recipes/mumble/README.md b/recipes/mumble/README.md new file mode 100644 index 0000000000000..7b82094cc836c --- /dev/null +++ b/recipes/mumble/README.md @@ -0,0 +1,24 @@ +# C++ Project : Mumble a Voice Over IP Server + +`mumble` is a C++ package. + +* https://github.com/bluenviron/mediamtx + +## V1 recipe format + +This recipe is an example of the v1 recipe format. +* [CEP 13](https://github.com/conda/ceps/blob/main/cep-0013.md) +* [CEP 14](https://github.com/conda/ceps/blob/main/cep-0014.md) + +The v1 recipe format is fully functional when built with rattler-build. + +## Inspiration + +* https://github.com/conda-forge/fans-feedstock/ +* https://github.com/conda-forge/pixi-feedstock/ + +## Patches + +Mumble makes use of a 3rd party `cmake` module. + +https://github.com/Krzmbrzl/FindPythonInterpreter \ No newline at end of file diff --git a/recipes/mumble/conda_build_config.yaml b/recipes/mumble/conda_build_config.yaml new file mode 100644 index 0000000000000..2c71bc220461f --- /dev/null +++ b/recipes/mumble/conda_build_config.yaml @@ -0,0 +1,14 @@ +# We need fmemopen in libsolv which became available in 10.13 +c_stdlib_version: # [osx and x86_64] + - "10.13" # [osx and x86_64] + +c_compiler_version: # [osx] + - "16" # [osx] +cxx_compiler_version: # [osx] + - "16" # [osx] + +# Use a newer version of the SDK to fix the virtual package detection for macOS +# Otherwise `SYSTEM_VERSION_COMPAT` needs to be set to `0` to detect the proper macOS version +MACOSX_SDK_VERSION: # [osx and x86_64] + - 11.0 # [osx and x86_64] + \ No newline at end of file diff --git a/recipes/mumble/patches/0001-find-python.patch b/recipes/mumble/patches/0001-find-python.patch new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/recipes/mumble/recipe.yaml b/recipes/mumble/recipe.yaml new file mode 100644 index 0000000000000..f8175c05582c8 --- /dev/null +++ b/recipes/mumble/recipe.yaml @@ -0,0 +1,117 @@ +# yaml-language-server: $schema=https://raw.githubusercontent.com/prefix-dev/recipe-format/main/schema.json +schema_version: 1 + +# Much of the information is available via: +context: + group: mumble-voip + name: mumble + version: "1.5.735" + sha: 539680318419ca6c236d129dc5b6a96878bd048957cfcfb3882d313dd16660fa + git_rel: github.com/${{ group }}/${{ name }} + +package: + version: ${{ version }} + name: ${{ name|lower }} + +source: + - url: https://${{ git_rel }}/archive/refs/tags/v${{ version }}.tar.gz + sha256: ${{ sha }} + target_directory: src/mumble + patches: + - patches/0001-find-python.patch + - url: https://raw.githubusercontent.com/Krzmbrzl/FindPythonInterpreter/refs/heads/main/FindPythonInterpreter.cmake + sha256: e50f46754aa5d3e72f18a37ffdf077bc6de1600e6c460d8e0184924be631c93d + target_directory: src/mumble/3rdparty/FindPythonInterpreter/ + - url: https://raw.githubusercontent.com/Krzmbrzl/cmake-compiler-flags/refs/heads/main/CompilerFlags.cmake + sha256: 0636e048208bb37f07747136c00eec6f62549fe7147abf02a451df60702c3f89 + target_directory: src/mumble/3rdparty/cmake-compiler-flags/ + - url: https://github.com/lipis/flag-icons/archive/refs/tags/v7.3.2.tar.gz + sha256: 6a5497e1029e66415c3941a5e5ee001944b0a7e46bf365c6d5a91a033acee87e + target_directory: src/mumble/3rdparty/flag-icons/ + - url: https://github.com/microsoft/GSL/archive/refs/tags/v4.1.0.tar.gz + sha256: 0a227fc9c8e0bf25115f401b9a46c2a68cd28f299d24ab195284eb3f1d7794bd + target_directory: src/mumble/3rdparty/gsl/ + - url: https://github.com/nlohmann/json/archive/refs/tags/v3.11.3.tar.gz + sha256: 0d8ef5af7f9794e3263480193c491549b2ba6cc74bb018906202ada498a79406 + target_directory: src/mumble/3rdparty/nlohmann_json/ + - url: https://github.com/wolfpld/tracy/archive/refs/tags/v0.11.1.tar.gz + sha256: 2c11ca816f2b756be2730f86b0092920419f3dabc7a7173829ffd897d91888a1 + target_directory: src/mumble/3rdparty/tracy/ + +# https://github.com/mumble-voip/mumble/blob/master/docs/dev/build-instructions/README.md +build: + number: 0 + script: + env: + JOB_CNT: ${{ nprocs }} + interpreter: nu + content: | + cd src/mumble + cmake -B build -G Ninja -DCMAKE_BUILD_TYPE=Release -Dspeechd=OFF -Dstatic=ON -Doverlay-xcompile=OFF + cd build + cmake --build . -j $env.JOB_CNT + cmake --install . + +requirements: + build: + - nushell + - ${{ compiler('cxx') }} + - ${{ compiler('c') }} + - ${{ stdlib('c') }} + # - qt6-main + - qt + - qt-main + # - qt-wayland + - mesalib + - xorg-libxext + - libxext-devel-conda-x86_64 + - python + - cmake + - py-build-cmake + - ninja + - if: unix + then: make + - pkg-config + - libopenssl-static + - libprotobuf-static + - protobuf + host: + - ${{ stdlib('c') }} + # - qt + # - qt6-main + # - qt6-wayland + - xorg-libxi + - libboost-devel + - libgl-devel + - alsa-lib + - libcap + - libogg + - libsndfile + - libopus + # - libspeechd + - avahi + - libxcb + - zeroconf + - poco + +tests: + - script: + - "mumble --help 2>&1" + +about: + homepage: https://www.mumble.info/ + summary: 'Mumble is a free, open source, low latency, high quality voice chat application.' + description: | + Mumble was the first VoIP application to establish true low latency voice communication over a decade ago. + But low latency and gaming are not the only use cases it shines in. + license: BSD-3-Clause + license_file: + - LICENSE.txt + - https://www.mumble.info/LICENSE + - src/mumble/3rdPartyLicenses + documentation: https://www.mumble.info/documentation/ + repository: https://github.com/mumble-voip/mumble + +extra: + recipe-maintainers: + - phreed