Merge pull request #5714 from alexischr/update_bockbuild
[mono.git] / mono / btls / CMakeLists.txt
index aba7440e5058120c4c82cc779bc23d4582236425..8b9e4eb0cab58941efc00bb0c407b4ec61a4fab4 100644 (file)
@@ -12,6 +12,11 @@ endif()
 enable_language(C)
 enable_language(CXX)
 
+find_program(CCACHE_PROGRAM ccache)
+if(CCACHE_PROGRAM)
+    set_property(GLOBAL PROPERTY RULE_LAUNCH_COMPILE "${CCACHE_PROGRAM}")
+endif()
+
 # FIXME: cmake's asm detection is broken when using xcrun.
 set (CMAKE_ASM_COMPILER "${CMAKE_C_COMPILER}")
 set (CMAKE_ASM_COMPILER_ARG1 "${CMAKE_C_COMPILER_ARG1}")
@@ -22,14 +27,19 @@ if (NOT "${BTLS_ARCH}" STREQUAL "")
        message (WARNING "SET ARCH: ${BTLS_ARCH}")
        set (CMAKE_SYSTEM_PROCESSOR "${BTLS_ARCH}")
 endif ()
-set (C_CXX_FLAGS "-Wall -Wsign-compare -Wmissing-field-initializers -ggdb -fvisibility=hidden")
+
+set (C_CXX_FLAGS "-Wall -Wsign-compare -Wmissing-field-initializers -fPIC -ggdb -fvisibility=hidden")
+
 set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${C_CXX_FLAGS} ${BTLS_CFLAGS}")
 set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${C_CXX_FLAGS} ${BTLS_CFLAGS}")
 set (CMAKE_ASM_FLAGS "${CMAKE_ASM_FLAGS} ${BTLS_CFLAGS}")
 set (CMAKE_MACOSX_RPATH 1)
 set (MONO_BTLS 1)
 
+set(BUILD_SHARED_LIBS_SAVED "${BUILD_SHARED_LIBS}")
+set(BUILD_SHARED_LIBS OFF)
 add_subdirectory (${BTLS_ROOT} boringssl)
+set(BUILD_SHARED_LIBS "${BUILD_SHARED_LIBS_SAVED}")
 
 include_directories (
        ${SRC_DIR}
@@ -51,6 +61,7 @@ set (
        btls-ssl-ctx.h
        btls-ssl.c
        btls-ssl.h
+       btls-time64.c
        btls-util.c
        btls-util.h
        btls-x509-chain.c
@@ -74,20 +85,7 @@ set (
        btls-x509.c
        btls-x509.h
 
-       btls-android-utils.c
-
        ${BORINGSSL_OBJECTS}
 )
 
-if (BUILD_SHARED_LIBS)
-       add_library (mono-btls-shared SHARED ${MONO_BTLS_SOURCES})
-       set_target_properties (mono-btls-shared PROPERTIES RULE_LAUNCH_LINK
-               "${PROJECT_SOURCE_DIR}/create-object-library.sh ${CMAKE_BINARY_DIR} mono-btls-shared.txt mono-btls-shared-lo.txt libmono-btls-shared.a shared ${CMAKE_AR} ${CMAKE_RANLIB} <OBJECTS> --"
-       )
-else ()
-       add_library (mono-btls-static STATIC ${MONO_BTLS_SOURCES})
-       set_target_properties (mono-btls-static PROPERTIES RULE_LAUNCH_LINK
-               "${PROJECT_SOURCE_DIR}/create-object-library.sh ${CMAKE_BINARY_DIR} mono-btls-static.txt mono-btls-static-lo.txt libmono-btls-static.a static ${CMAKE_AR} ${CMAKE_RANLIB} <OBJECTS> --"
-       )
-endif ()
-
+add_library (mono-btls-shared SHARED ${MONO_BTLS_SOURCES})