PROJECT(openwsman) cmake_minimum_required (VERSION 3.13) set(OPENWSMAN_MASTER "../openwsman-master") set(LIBXML2 "../libxml2") set(LIBXML2_MASTER "../libxml2-master") #add_subdirectory("src/cpp") # "src/lib/wsman-debug.c" set (LIB_FILES "src/lib/wsman-client-transport.c" "src/lib/wsman-client.c" "src/lib/wsman-epr.c" "src/lib/wsman-faults.c" "src/lib/wsman-filter.c" "src/lib/wsman-key-value.c" "src/lib/wsman-libxml2-binding.c" "src/lib/wsman-soap-envelope.c" "src/lib/wsman-soap-message.c" "src/lib/wsman-win-client-transport.c" "src/lib/wsman-xml-serialize.c" "src/lib/wsman-xml.c" ) # "src/lib/u/uoption.c" "src/lib/u/iniparser.c" set (LIB_FILES_U "src/lib/u/base64.c" "src/lib/u/buf.c" "src/lib/u/debug.c" "src/lib/u/gettimeofday.c" "src/lib/u/hash.c" "src/lib/u/list.c" "src/lib/u/lock.c" "src/lib/u/log.c" "src/lib/u/md5.c" "src/lib/u/memory.c" "src/lib/u/misc.c" "src/lib/u/os.c" "src/lib/u/pthreadx_win32.c" "src/lib/u/strings.c" "src/lib/u/syslog.c" "src/lib/u/uerr.c" "src/lib/u/uri.c" "src/lib/u/uuid.c") set (LIB_FILES_CPP "src/cpp/OpenWsmanClient.cpp" "src/cpp/WsmanEPR.cpp" "src/cpp/WsmanFilter.cpp" "src/cpp/WsmanOptions.cpp") SET(LIB_FILES_FIXED "") FOREACH(f ${LIB_FILES}) LIST(APPEND LIB_FILES_FIXED "${OPENWSMAN_MASTER}/${f} ") ENDFOREACH(f) FOREACH(f ${LIB_FILES_U}) LIST(APPEND LIB_FILES_FIXED "${OPENWSMAN_MASTER}/${f} ") ENDFOREACH(f) FOREACH(f ${LIB_FILES_CPP}) LIST(APPEND LIB_FILES_FIXED "${OPENWSMAN_MASTER}/${f} ") ENDFOREACH(f) add_library(libxml2_bin OBJECT IMPORTED) get_filename_component(LIBXML2_LIB_PATH "${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/${CMAKE_BUILD_TYPE}/libxml2.lib" ABSOLUTE) set_property(TARGET libxml2_bin PROPERTY IMPORTED_OBJECTS ${LIBXML2_LIB_PATH}) add_library(openwsman STATIC ${LIB_FILES_FIXED} $ ) include_directories("./" "${OPENWSMAN_MASTER}/include" "${OPENWSMAN_MASTER}/src/lib" "${LIBXML2}" "${LIBXML2_MASTER}/include") target_link_libraries(openwsman libxml2) add_definitions(-DHAVE_CONFIG_H -DUSE_WINSOCK) list(APPEND CMAKE_ARGS "CMAKE_ARGS HAVE_CONFIG_H=ON -DBUILD_EXAMPLES=OFF -DBUILD_PYTHON=OFF -DBUILD_RUBY=OFF -DDISABLE_PLUGINS=ON -DBUILD_TESTS=OFF -DBUILD_SWIG_PLUGIN=OFF -DBUILD_CSHARP=OFF -DBUILD_JAVA=OFF -DDISABLE_SERVER=ON -DBUILD_PERL=OFF -DUSE_PAM=OFF -DENABLE_EVENTING_SUPPORT=NO -DBUILD_SHARED_LIBS=OFF")