Files
shaka-packager/CMakeLists.txt
Niklas Korz 2c6790a8cb
Some checks failed
Update Issues / update-issues (push) Has been cancelled
Release / Settings (push) Has been cancelled
Release / release (push) Has been cancelled
Release / Compute latest release flag (push) Has been cancelled
Release / Update docs (push) Has been cancelled
Release / Update docker image (push) Has been cancelled
Release / Build (push) Has been cancelled
Release / Artifacts (push) Has been cancelled
Release / Update NPM (push) Has been cancelled
feat(cmake): allow using system dependencies (#1562)
Another of our currently vendored patches for nixpkgs / NixOS that has
been in use for about two years, hidden behind an option to allow both
variants to coexist.

The idea is that opting into `USE_SYSTEM_DEPENDENCIES` works without any
submodules, so when this option is enabled, we also expect the system to
already have Python with the `google.protobuf` module ready and
available.
2026-03-16 10:25:20 -07:00

38 lines
1.4 KiB
CMake

# Copyright 2022 Google LLC. All rights reserved.
#
# Use of this source code is governed by a BSD-style
# license that can be found in the LICENSE file or at
# https://developers.google.com/open-source/licenses/bsd
# Root-level CMake build file.
# Minimum CMake version. This must be in the root level CMakeLists.txt.
cmake_minimum_required(VERSION 3.24)
# These policy settings should be included before the project definition.
include("packager/policies.cmake")
# Project name. May not contain spaces. Versioning is managed elsewhere.
project(shaka-packager VERSION "")
# Whether to build a shared libpackager library. By default, don't.
option(BUILD_SHARED_LIBS "Build libpackager as a shared library" OFF)
# Whether to attempt a static linking of the command line front-end.
# Only supported on Linux and with musl. This will also cause us to link
# against mimalloc to replace the standard allocator in musl, which is slow.
option(FULLY_STATIC "Attempt fully static linking of all CLI apps" OFF)
# Whether to look for third-party dependencies on the system through
# `find_package` instead of building them from git submodules.
option(USE_SYSTEM_DEPENDENCIES "Search for dependencies on the system" OFF)
# Enable CMake's test infrastructure.
enable_testing()
option(SKIP_INTEGRATION_TESTS "Skip the packager integration tests" OFF)
# Subdirectories with their own CMakeLists.txt
add_subdirectory(packager)
add_subdirectory(link-test)