CLI's main() scaffolding

Again, this is mostly a copy-paste from the other project.

Change-Id: Ic72aee3a46644afc91d9f1d7ca8ab22d477608ef
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 76f07e7..8986d4f 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -31,12 +31,30 @@
 # configurations. They are warnings, not errors.
 set(CMAKE_CXX_FLAGS "-Wall -Wextra -pedantic ${CMAKE_CXX_FLAGS}")
 
+set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake/")
+
+add_custom_target(git-version-cmake-ide
+    cmake/ProjectGitVersion.cmake
+    cmake/ProjectGitVersionRunner.cmake
+    )
+include(cmake/ProjectGitVersion.cmake)
+prepare_git_version(NETCONF_CLI_VERSION "0.0")
+
 find_package(Doxygen)
 option(WITH_DOCS "Create and install internal documentation (needs Doxygen)" ${DOXYGEN_FOUND})
 
 find_package(docopt REQUIRED)
 find_package(spdlog REQUIRED)
 
+set(netconf-cli_SRCS
+    src/main.cpp
+    )
+
+add_executable(netconf-cli ${netconf-cli_SRCS})
+target_link_libraries(netconf-cli docopt)
+add_dependencies(netconf-cli target-NETCONF_CLI_VERSION)
+target_include_directories(netconf-cli PRIVATE ${PROJECT_BINARY_DIR})
+
 include(CTest)
 if(BUILD_TESTING)
     enable_testing()