diff options
author | 2025-04-26 19:53:50 -0700 | |
---|---|---|
committer | 2025-04-26 19:53:50 -0700 | |
commit | 2ac996203bea70f022ceec5e1dfdd4ae596da7d8 (patch) | |
tree | b6414e0e9b66835c30734f648c2b3c3d91b7cbdf | |
parent | cb694ef398b086942372a936dfcc1b8b99b27120 (diff) | |
download | github-mirror-2ac996203bea70f022ceec5e1dfdd4ae596da7d8.tar.gz github-mirror-2ac996203bea70f022ceec5e1dfdd4ae596da7d8.tar.zst github-mirror-2ac996203bea70f022ceec5e1dfdd4ae596da7d8.zip |
Add --version flag
Diffstat (limited to '')
-rw-r--r-- | CMakeLists.txt | 7 | ||||
-rw-r--r-- | src/main.c | 7 |
2 files changed, 11 insertions, 3 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 78eff98..17b5496 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,5 +1,5 @@ cmake_minimum_required(VERSION 3.30) -project(github_mirror C) +project(github_mirror VERSION 0.1.2 LANGUAGES C) set(CMAKE_C_STANDARD 17) include(FetchContent) @@ -87,6 +87,9 @@ add_executable(github_mirror ) target_link_libraries(github_mirror PRIVATE cjson CURL::libcurl) target_include_directories(github_mirror PRIVATE ${cjson_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/include) +target_compile_definitions(github_mirror PRIVATE + GITHUB_MIRROR_VERSION="${PROJECT_VERSION}" +) add_dependencies(github_mirror generate_graphql_headers) install(TARGETS github_mirror DESTINATION bin) @@ -124,7 +127,7 @@ add_test(NAME test_config COMMAND test_config) include(InstallRequiredSystemLibraries) set(CPACK_PACKAGE_NAME "github_mirror") -set(CPACK_PACKAGE_VERSION "0.1.2") +set(CPACK_PACKAGE_VERSION ${PROJECT_VERSION}) set(CPACK_PACKAGE_CONTACT "ansg191@anshulg.com") set(CPACK_DEBIAN_PACKAGE_MAINTAINER "Anshul Gupta") set(CPACK_DEBIAN_PACKAGE_DEPENDS "libc6 (>= 2.28), libcurl4 (>= 7.64)") @@ -18,12 +18,13 @@ static int load_config(int argc, char **argv, struct config **cfg_out) char *cfg_path = NULL; static struct option long_options[] = { + {"version", no_argument, 0, 'v'}, {"config", required_argument, 0, 'c'}, {"help", no_argument, 0, 'h'}, {"quiet", no_argument, 0, 'q'}, {0, 0, 0, 0}}; - while ((opt = getopt_long(argc, argv, "C:c:h:q", long_options, + while ((opt = getopt_long(argc, argv, "C:c:h:q:v", long_options, &opt_idx)) != -1) { switch (opt) { case 'C': @@ -38,6 +39,10 @@ static int load_config(int argc, char **argv, struct config **cfg_out) case 'q': quiet = 1; break; + case 'v': + fprintf(stderr, "github_mirror v%s\n", + GITHUB_MIRROR_VERSION); + return 0; default: fprintf(stderr, "Unknown option: %c\n", opt); fprintf(stderr, |