X-Git-Url: http://www.project-moonshot.org/gitweb/?a=blobdiff_plain;f=json_gssapi%2FCMakeLists.txt;h=ac6b2648b3de99ec73998b1aa4c16f3430d9523c;hb=ee3148d66441862aa7ed921fb37c812796347163;hp=8534075fe69801dbef45b5e556c80d7337f9a695;hpb=04a857ff275734e95df8e7392ce7522b0611393e;p=gssweb.git diff --git a/json_gssapi/CMakeLists.txt b/json_gssapi/CMakeLists.txt index 8534075..ac6b264 100644 --- a/json_gssapi/CMakeLists.txt +++ b/json_gssapi/CMakeLists.txt @@ -1,8 +1,8 @@ cmake_minimum_required(VERSION 2.8) - +include(GenerateExportHeader) project(json_gssapi) -include_directories(src/) +include_directories(src/ ${CMAKE_CURRENT_BINARY_DIR}) add_library(jsongssapi SHARED src/datamodel/GSSDisplayStatus.cpp @@ -30,25 +30,54 @@ add_library(jsongssapi SHARED src/datamodel/GSSContext.cpp ) -target_link_libraries(jsongssapi gssapi_krb5 jansson crypto) +GENERATE_EXPORT_HEADER(jsongssapi) add_executable(json_gssapi main.cpp) -target_link_libraries(json_gssapi gssapi_krb5 jansson crypto jsongssapi) find_package (PkgConfig) pkg_check_modules (GLIB2 glib-2.0) -if (GLIB2_FOUND) - include_directories(${GLIB2_INCLUDE_DIRS}) - target_link_libraries(json_gssapi ${GLIB2_LIBRARIES}) -endif(GLIB2_FOUND) - +find_package (Jansson) +if (JANSSON_FOUND) +else (JANSSON_FOUND) + set(JANSSON_LIBRARIES jansson) +endif (JANSSON_FOUND) + +# deal with gssapi / krb5 +if (WIN32) +set(KRB5_SDK $ENV{PROGRAMW6432}\\MIT\\Kerberos) +message("KRB5_SDK: ${KRB5_SDK}" ) +set(KRB5_INCLUDE_DIRS ${KRB5_SDK}\\include;${KRB5_SDK}\\include\\gssapi) +set(KRB5_LIBRARIES ${KRB5_SDK}\\lib\\amd64\\gssapi64.lib) +else (WIN32) +set(KRB5_LIBRARIES gssapi_krb5) +endif (WIN32) + +# openssl / crpyto for random +if (WIN32) +else (WIN32) +target_link_libraries(jsongssapi crypto) +target_link_libraries(json_gssapi crypto) +add_definitions(-DHAVE_OPENSSL) +endif (WIN32) + +if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "MSVC") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /WX") +elseif ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Werror") +endif () + +include_directories(${KRB5_INCLUDE_DIRS} ${JANSSON_INCLUDE_DIRS}) +target_link_libraries(jsongssapi ${KRB5_LIBRARIES} ${JANSSON_LIBRARIES}) +target_link_libraries(json_gssapi jsongssapi ${KRB5_LIBRARIES} ${JANSSON_LIBRARIES}) set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake_modules/") -FIND_PACKAGE(CPPUNIT REQUIRED) -install(TARGETS json_gssapi RUNTIME DESTINATION bin) +find_package (CPPUNIT) +install(TARGETS json_gssapi jsongssapi + RUNTIME DESTINATION bin + LIBRARY DESTINATION lib) add_subdirectory(src) -add_subdirectory(test) \ No newline at end of file +add_subdirectory(test)