diff options
author | Julien Dessaux | 2019-02-14 20:48:20 +0100 |
---|---|---|
committer | Julien Dessaux | 2019-02-14 20:48:20 +0100 |
commit | 9399ff045d40a72c8ec90db3d07d1877ee2b3be3 (patch) | |
tree | df1a40330acea568c9de2b3daf1166a30fad8dee | |
parent | Implemented session id management and session logs in database (diff) | |
download | bastion-9399ff045d40a72c8ec90db3d07d1877ee2b3be3.tar.gz bastion-9399ff045d40a72c8ec90db3d07d1877ee2b3be3.tar.bz2 bastion-9399ff045d40a72c8ec90db3d07d1877ee2b3be3.zip |
Switched from standard makefile to cmake
Diffstat (limited to '')
-rw-r--r-- | .gitignore | 3 | ||||
-rw-r--r-- | CMakeLists.txt | 14 | ||||
-rw-r--r-- | GNUmakefile | 32 | ||||
-rw-r--r-- | config.h | 4 | ||||
-rw-r--r-- | src/CMakeLists.txt | 9 |
5 files changed, 26 insertions, 36 deletions
@@ -1,7 +1,6 @@ bastion -libssh/ +build id_rsa ssh_host_*_key test_client.c -*.[do] *.sw[a-p] diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 0000000..d3234c1 --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,14 @@ +cmake_minimum_required (VERSION 3.0) +project (bastion LANGUAGES C VERSION 0.1) + +set(CMAKE_VERBOSE_MAKEFILE FALSE) +set(CMAKE_BUILD_TYPE DEBUG) + +set(CMAKE_C_FLAGS "-Wall -Werror -Wextra -pedantic") +set(CMAKE_C_FLAGS_DEBUG "-g -ggdb -pg -fsanitize=address") +set(CMAKE_C_FLAGS_RELEASE "-Os") +set(CMAKE_C_FLAGS_RELWITHDEBINFO "-Os -g") + +option(LIBSSH_VERBOSE_OUTPOUT "whether or not verbose output for libssh mode is activated" OFF) + +add_subdirectory(src) diff --git a/GNUmakefile b/GNUmakefile deleted file mode 100644 index 2de00cf..0000000 --- a/GNUmakefile +++ /dev/null @@ -1,32 +0,0 @@ -CC=clang -DEBUG=-g -fsanitize=address -CFLAGS= ${DEBUG} -Wall -Werror -Wextra -Weverything -Wno-disabled-macro-expansion - -sources=$(wildcard src/*.c) -OBJ=$(sources:.c=.o) - -all: bastion - -bastion: $(OBJ) - $(CC) ${DEBUG} -o bastion $(OBJ) -lssh -lutil -ltty -lmysqlclient - -clean: - $(RM) bastion *.[do] src/*.[do] - -%.o: %.c - $(CC) -c $(CFLAGS) $*.c -o $*.o - $(CC) -MM $(CFLAGS) $*.c > $*.d - @mv -f $*.d $*.d.tmp - @sed -e 's|.*:|$*.o:|' < $*.d.tmp > $*.d - @sed -e 's/.*://' -e 's/\\$$//' < $*.d.tmp | fmt -1 | sed -e 's/^ *//' -e 's/$$/:/' >> $*.d - @rm -f $*.d.tmp - -# You must compile without -fsanitize=address to use valgrind -valgrind: - valgrind --leak-check=full --show-leak-kinds=all --trace-children=yes --suppressions=${HOME}/.valgrind_suppressions ./bastion - #valgrind -v --leak-check=full --show-leak-kinds=all --trace-children=yes --suppressions=${HOME}/.valgrind_suppressions --gen-suppressions=yes ./bastion - -debug: - ASAN_OPTIONS=allow_user_segv_handler=true:detect_leaks=true:fast_unwind_on_malloc=0:check_initialization_order=1:suppressions=asan.supp \ - ASAN_SYMBOLIZER_PATH=/usr/lib/llvm-6.0/bin/llvm-symbolizer \ - ./bastion @@ -9,8 +9,8 @@ #define RSAKEY_PATH "./ssh_host_rsa_key" #define ECDSAKEY_PATH "./ssh_host_ecdsa_key" -#define MYSQL_HOST "::" -#define MYSQL_USER "root" +#define MYSQL_HOST "localhost" +#define MYSQL_USER "sshportal" #define MYSQL_PASS "graou" #define MYSQL_DB "sshportal" diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt new file mode 100644 index 0000000..f885850 --- /dev/null +++ b/src/CMakeLists.txt @@ -0,0 +1,9 @@ +include_directories("${bastion_SOURCE_DIR}/termrec/libtty/") + +file(GLOB_RECURSE SOURCES *.c) + +add_executable(bastion ${SOURCES}) +add_library(libtty.a STATIC IMPORTED) +set_property(TARGET libtty.a PROPERTY IMPORTED_LOCATION "${bastion_SOURCE_DIR}/libtty.a") +target_link_libraries(bastion libtty.a) +target_link_libraries(bastion bz2 curl lzma mysqlclient pthread ssh z) |