Correct build when nss/nspr do not provide pkg-config files
This commit is contained in:
@ -568,8 +568,8 @@ unset(optupper)
|
||||
# as both gnutls and mozilla-nss have a header called "pkcs12.h" which is
|
||||
# included in smime/lib/e-pkcs12.c. It wants the Mozilla NSS one.
|
||||
|
||||
set(CERT_UI_INCLUDES ${MANUAL_NSPR_INCLUDES})
|
||||
set(CERT_UI_LIBS ${MANUAL_NSPR_LIBS})
|
||||
set(CERT_UI_INCLUDES ${MANUAL_NSPR_INCLUDES} ${MANUAL_NSS_INCLUDES})
|
||||
set(CERT_UI_LIBS ${MANUAL_NSPR_LIBS} ${MANUAL_NSS_LIBS})
|
||||
|
||||
# ******************************
|
||||
# Libnotify
|
||||
|
@ -70,6 +70,8 @@ if(NOT (WITH_NSPR_INCLUDES STREQUAL ""))
|
||||
set(CMAKE_REQUIRED_INCLUDES ${WITH_NSPR_INCLUDES})
|
||||
endif(NOT (WITH_NSPR_INCLUDES STREQUAL ""))
|
||||
|
||||
unset(_have_headers CACHE)
|
||||
|
||||
CHECK_INCLUDE_FILES("nspr.h;prio.h" _have_headers)
|
||||
|
||||
unset(CMAKE_REQUIRED_INCLUDES)
|
||||
@ -79,11 +81,13 @@ if(NOT _have_headers)
|
||||
endif(NOT _have_headers)
|
||||
|
||||
set(MANUAL_NSPR_INCLUDES "${WITH_NSPR_INCLUDES}")
|
||||
string(STRIP ${MANUAL_NSPR_INCLUDES} MANUAL_NSPR_INCLUDES)
|
||||
|
||||
set(nsprlibs "-lplc4 -lplds4 -lnspr4")
|
||||
|
||||
set(CMAKE_REQUIRED_INCLUDES ${MANUAL_NSPR_INCLUDES})
|
||||
set(CMAKE_REQUIRED_LIBRARIES ${nsprlibs})
|
||||
unset(_nsprlibs_okay CACHE)
|
||||
CHECK_C_SOURCE_COMPILES("#include <prinit.h>
|
||||
int main(void) { PR_Initialized(); return 0; }" _nsprlibs_okay)
|
||||
unset(CMAKE_REQUIRED_INCLUDES)
|
||||
@ -100,6 +104,7 @@ if(NOT (WITH_NSPR_LIBS STREQUAL ""))
|
||||
endif(NOT (WITH_NSPR_LIBS STREQUAL ""))
|
||||
|
||||
set(MANUAL_NSPR_LIBS "${MANUAL_NSPR_LIBS} ${nsprlibs}")
|
||||
string(STRIP ${MANUAL_NSPR_LIBS} MANUAL_NSPR_LIBS)
|
||||
|
||||
# *****************
|
||||
# Check for NSS 3
|
||||
@ -123,12 +128,14 @@ if(NOT _have_headers)
|
||||
message(FATAL_ERROR "NSS headers not found. Use -DWITH_NSS_INCLUDES=/path/to/nss to specify the include dir of NSS.")
|
||||
endif(NOT _have_headers)
|
||||
|
||||
set(MANUAL_NSS_INCLUDES "${WITH_NSS_INCLUDES} ${MANUAL_NSPR_INCLUDES}")
|
||||
set(MANUAL_NSS_INCLUDES "${WITH_NSS_INCLUDES}")
|
||||
string(STRIP ${MANUAL_NSS_INCLUDES} MANUAL_NSS_INCLUDES)
|
||||
|
||||
set(nsslibs "-lssl3 -lsmime3 -lnss3")
|
||||
|
||||
set(CMAKE_REQUIRED_INCLUDES ${MANUAL_NSS_INCLUDES})
|
||||
set(CMAKE_REQUIRED_INCLUDES ${MANUAL_NSS_INCLUDES} ${MANUAL_NSPR_INCLUDES})
|
||||
set(CMAKE_REQUIRED_LIBRARIES ${nsslibs} ${nsprlibs})
|
||||
unset(_nsslibs_okay CACHE)
|
||||
CHECK_C_SOURCE_COMPILES("#include <nss.h>
|
||||
int main(void) { NSS_Init(\"\"); return 0; }" _nsslibs_okay)
|
||||
unset(CMAKE_REQUIRED_INCLUDES)
|
||||
@ -146,6 +153,7 @@ if(NOT (WITH_NSS_LIBS STREQUAL ""))
|
||||
endif(NOT (WITH_NSS_LIBS STREQUAL ""))
|
||||
|
||||
set(MANUAL_NSS_LIBS "${MANUAL_NSS_LIBS} ${nsslibs} ${MANUAL_NSPR_LIBS}")
|
||||
string(STRIP ${MANUAL_NSS_LIBS} MANUAL_NSS_LIBS)
|
||||
|
||||
if(MOZILLA_NSS_LIB_DIR STREQUAL "")
|
||||
set(MOZILLA_NSS_LIB_DIR "${LIB_INSTALL_DIR}")
|
||||
|
@ -66,14 +66,14 @@ target_include_directories(evolution-mail-composer PUBLIC
|
||||
${CMAKE_SOURCE_DIR}/src
|
||||
${CMAKE_CURRENT_BINARY_DIR}
|
||||
${ENCHANT_INCLUDE_DIRS}
|
||||
${CERT_UI_INCLUDE_DIRS}
|
||||
${CERT_UI_INCLUDES}
|
||||
${EVOLUTION_DATA_SERVER_INCLUDE_DIRS}
|
||||
${GNOME_PLATFORM_INCLUDE_DIRS}
|
||||
)
|
||||
|
||||
target_link_libraries(evolution-mail-composer
|
||||
${DEPENDENCIES}
|
||||
${CERT_UI_LDFLAGS}
|
||||
${CERT_UI_LIBS}
|
||||
${EVOLUTION_DATA_SERVER_LDFLAGS}
|
||||
${GNOME_PLATFORM_LDFLAGS}
|
||||
)
|
||||
|
@ -243,7 +243,7 @@ target_include_directories(evolution-mail PUBLIC
|
||||
${CMAKE_SOURCE_DIR}/src/shell
|
||||
${CMAKE_SOURCE_DIR}/src/smime/lib
|
||||
${CMAKE_SOURCE_DIR}/src/smime/gui
|
||||
${CERT_UI_INCLUDE_DIRS}
|
||||
${CERT_UI_INCLUDES}
|
||||
${CANBERRA_INCLUDE_DIRS}
|
||||
${EVOLUTION_DATA_SERVER_INCLUDE_DIRS}
|
||||
${GNOME_PLATFORM_INCLUDE_DIRS}
|
||||
@ -251,7 +251,7 @@ target_include_directories(evolution-mail PUBLIC
|
||||
|
||||
target_link_libraries(evolution-mail
|
||||
${DEPENDENCIES}
|
||||
${CERT_UI_LDFLAGS}
|
||||
${CERT_UI_LIBS}
|
||||
${CANBERRA_LDFLAGS}
|
||||
${EVOLUTION_DATA_SERVER_LDFLAGS}
|
||||
${GNOME_PLATFORM_LDFLAGS}
|
||||
|
@ -41,14 +41,14 @@ target_include_directories(evolution-smime PUBLIC
|
||||
${CMAKE_SOURCE_DIR}/src
|
||||
${CMAKE_CURRENT_BINARY_DIR}
|
||||
${CMAKE_SOURCE_DIR}/src/smime/lib
|
||||
${CERT_UI_INCLUDE_DIRS}
|
||||
${CERT_UI_INCLUDES}
|
||||
${EVOLUTION_DATA_SERVER_INCLUDE_DIRS}
|
||||
${GNOME_PLATFORM_INCLUDE_DIRS}
|
||||
)
|
||||
|
||||
target_link_libraries(evolution-smime
|
||||
${DEPENDENCIES}
|
||||
${CERT_UI_LDFLAGS}
|
||||
${CERT_UI_LIBS}
|
||||
${EVOLUTION_DATA_SERVER_LDFLAGS}
|
||||
${GNOME_PLATFORM_LDFLAGS}
|
||||
)
|
||||
|
@ -36,14 +36,14 @@ target_include_directories(essmime PUBLIC
|
||||
${CMAKE_BINARY_DIR}/src
|
||||
${CMAKE_SOURCE_DIR}/src
|
||||
${CMAKE_CURRENT_BINARY_DIR}
|
||||
${CERT_UI_INCLUDE_DIRS}
|
||||
${CERT_UI_INCLUDES}
|
||||
${EVOLUTION_DATA_SERVER_INCLUDE_DIRS}
|
||||
${GNOME_PLATFORM_INCLUDE_DIRS}
|
||||
)
|
||||
|
||||
target_link_libraries(essmime
|
||||
${DEPENDENCIES}
|
||||
${CERT_UI_LDFLAGS}
|
||||
${CERT_UI_LIBS}
|
||||
${EVOLUTION_DATA_SERVER_LDFLAGS}
|
||||
${GNOME_PLATFORM_LDFLAGS}
|
||||
)
|
||||
|
Reference in New Issue
Block a user