Move benchmark parameter normalization and dispatch into the Rust CLI archive while retaining the stable C launcher entry point. Keep compact CLI variants benchmark-free and add an explicit helpers feature for the C test generators. Test Plan: - cargo test --manifest-path rust/cli/Cargo.toml --no-default-features --features benchmark - cargo test --manifest-path rust/cli/Cargo.toml --no-default-features --features helpers - cargo clippy --manifest-path rust/cli/Cargo.toml --all-targets --no-default-features --features cli,compression,decompression,benchmark - cargo clippy --manifest-path rust/cli/Cargo.toml --all-targets --no-default-features --features helpers - make -B -C programs -j2 zstd zstd-small zstd-frugal - make -B -C tests -j2 test-cli-tests - programs/zstd -b1i1 -q
28 lines
926 B
C
28 lines
926 B
C
/*
|
|
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
* All rights reserved.
|
|
*
|
|
* This source code is licensed under both the BSD-style license (found in the
|
|
* LICENSE file in the root directory of this source tree) and the GPLv2 (found
|
|
* in the COPYING file in the root directory of this source tree).
|
|
* You may select, at your option, one of the above-listed licenses.
|
|
*/
|
|
|
|
/* The CLI parser and control flow live in rust/src/zstd_cli.rs. Keep this
|
|
* translation unit as the stable C entry point used by program launchers. */
|
|
#define ZSTD_STATIC_LINKING_ONLY /* ZSTD_compressionParameters */
|
|
#include "../lib/zstd.h"
|
|
|
|
int ZSTD_rust_cli_main(int argCount, const char* const argv[]);
|
|
const char* ZSTD_rust_cli_expected_version(void);
|
|
|
|
const char* ZSTD_rust_cli_expected_version(void)
|
|
{
|
|
return ZSTD_VERSION_STRING;
|
|
}
|
|
|
|
int main(int argCount, const char* argv[])
|
|
{
|
|
return ZSTD_rust_cli_main(argCount, argv);
|
|
}
|