add cpack to build debian package

This commit is contained in:
Ryo Nakamura
2022-10-30 12:17:17 +00:00
parent 2bcbdd2292
commit 453e8f27ce
3 changed files with 26 additions and 4 deletions

1
.gitignore vendored
View File

@@ -1 +1,2 @@
build
.*.swp

View File

@@ -1,6 +1,6 @@
cmake_minimum_required(VERSION 3.13)
project(mscp C)
project(mscp VERSION 0.0.0 LANGUAGES C)
set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -DDEBUG")
@@ -8,8 +8,22 @@ add_executable(mscp src/main.c src/platform.c src/ssh.c src/file.c src/pprint.c)
target_include_directories(mscp PUBLIC ./src /usr/local/include)
target_link_directories(mscp PUBLIC /usr/local/lib)
target_link_libraries(mscp ssh pthread m)
target_compile_definitions(mscp PUBLIC _VERSION="${PROJECT_VERSION}")
install(TARGETS mscp
RUNTIME DESTINATION bin
)
set(CPACK_SET_DESTDIR true)
set(CPACK_PROJECT_NAME ${PROJECT_NAME})
set(CPACK_PROJECT_VERSION ${PROJECT_VERSION})
set(CPACK_PACKAGE_CONTACT "Ryo Nakamura <upa@haeena.net>")
set(CPACK_DEBIAN_FILE_NAME DEB-DEFAULT)
set(CPACK_DEBIAN_PACKAGE_HOMEPAGE "https://github.com/upa/mscp")
set(CPACK_DEBIAN_PACKAGE_DEPENDS "libssh-4")
set(CPACK_DEBIAN_PACKAGE_DESCRIPTION
"mscp, copy files over multiple ssh connections")
include(CPack)

View File

@@ -16,6 +16,12 @@
#include <atomic.h>
#include <platform.h>
#ifndef _VERSION /* passed through cmake */
#define VERSION "(unknown)"
#else
#define VERSION _VERSION
#endif
#define DEFAULT_MIN_CHUNK_SZ (64 << 20) /* 64MB */
#define DEFAULT_SFTP_BUF_SZ 131072 /* derived from qemu/block/ssh.c */
#define DEFAULT_IO_BUF_SZ DEFAULT_SFTP_BUF_SZ
@@ -65,9 +71,10 @@ void stop_copy_threads(int sig)
void usage(bool print_help) {
printf("mscp: copy files over multiple ssh connections\n"
printf("mscp v" VERSION ": copy files over multiple ssh connections\n"
"\n"
"Usage: mscp [CvqDdh] [-n nr_conns] [-s min_chunk_sz] [-S max_chunk_sz]\n"
"Usage: mscp [CvqDdh] [-n nr_conns]\n"
" [-s min_chunk_sz] [-S max_chunk_sz]\n"
" [-b sftp_buf_sz] [-B io_buf_sz]\n"
" [-l login_name] [-p port] [-i identity_file]\n"
" [-c cipher_spec] source ... target\n"