File tree Expand file tree Collapse file tree 4 files changed +76
-2
lines changed Expand file tree Collapse file tree 4 files changed +76
-2
lines changed Original file line number Diff line number Diff line change @@ -459,6 +459,9 @@ endif()
459
459
460
460
set (SWIFT_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR} " )
461
461
set (SWIFT_BINARY_DIR "${CMAKE_CURRENT_BINARY_DIR} " )
462
+ set (SWIFT_CMAKE_DIR "${CMAKE_CURRENT_SOURCE_DIR} /cmake/modules" )
463
+ set (SWIFT_MAIN_INCLUDE_DIR "${SWIFT_SOURCE_DIR} /include" )
464
+ set (SWIFT_INCLUDE_DIR "${CMAKE_CURRENT_BINARY_DIR} /include" )
462
465
463
466
set (SWIFT_RUNTIME_OUTPUT_INTDIR "${CMAKE_BINARY_DIR} /${CMAKE_CFG_INTDIR} /bin" )
464
467
set (SWIFT_LIBRARY_OUTPUT_INTDIR "${CMAKE_BINARY_DIR} /${CMAKE_CFG_INTDIR} /lib" )
@@ -479,8 +482,8 @@ set(CMAKE_INCLUDE_CURRENT_DIR ON)
479
482
480
483
# We'll need this once we have generated headers
481
484
include_directories (BEFORE
482
- ${CMAKE_CURRENT_BINARY_DIR} /include
483
- ${CMAKE_CURRENT_SOURCE_DIR} /include
485
+ ${SWIFT_MAIN_INCLUDE_DIR}
486
+ ${SWIFT_INCLUDE_DIR}
484
487
)
485
488
486
489
# A convenience pattern to match Darwin platforms. Example:
@@ -954,6 +957,8 @@ if(SWIFT_INCLUDE_DOCS)
954
957
add_subdirectory (docs )
955
958
endif ()
956
959
960
+ add_subdirectory (cmake/modules )
961
+
957
962
swift_install_in_component (license
958
963
FILES "LICENSE.txt"
959
964
DESTINATION "share/swift" )
Original file line number Diff line number Diff line change @@ -1756,6 +1756,19 @@ function(add_swift_library name)
1756
1756
DEPLOYMENT_VERSION_TVOS "${SWIFTLIB_DEPLOYMENT_VERSION_TVOS} "
1757
1757
DEPLOYMENT_VERSION_WATCHOS "${SWIFTLIB_DEPLOYMENT_VERSION_WATCHOS} "
1758
1758
)
1759
+
1760
+ swift_install_in_component (dev
1761
+ TARGETS ${name}
1762
+ ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX}
1763
+ LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
1764
+ RUNTIME DESTINATION bin )
1765
+ swift_is_installing_component (dev is_installing )
1766
+
1767
+ if (NOT is_installing )
1768
+ set_property (GLOBAL APPEND PROPERTY SWIFT_BUILDTREE_EXPORTS ${name} )
1769
+ else ()
1770
+ set_property (GLOBAL APPEND PROPERTY SWIFT_EXPORTS ${name} )
1771
+ endif ()
1759
1772
endif ()
1760
1773
endfunction ()
1761
1774
@@ -2075,5 +2088,14 @@ function(add_swift_host_tool executable)
2075
2088
swift_install_in_component (${ADDSWIFTHOSTTOOL_SWIFT_COMPONENT}
2076
2089
TARGETS ${executable}
2077
2090
RUNTIME DESTINATION bin )
2091
+
2092
+ swift_is_installing_component (${ADDSWIFTHOSTTOOL_SWIFT_COMPONENT}
2093
+ is_installing )
2094
+
2095
+ if (NOT is_installing )
2096
+ set_property (GLOBAL APPEND PROPERTY SWIFT_BUILDTREE_EXPORTS ${executable} )
2097
+ else ()
2098
+ set_property (GLOBAL APPEND PROPERTY SWIFT_EXPORTS ${executable} )
2099
+ endif ()
2078
2100
endif ()
2079
2101
endfunction ()
Original file line number Diff line number Diff line change
1
+ set (SWIFT_INSTALL_PACKAGE_DIR lib${LLVM_LIBDIR_SUFFIX}/cmake/swift )
2
+ set (swift_cmake_builddir "${SWIFT_BINARY_DIR} /${SWIFT_INSTALL_PACKAGE_DIR} " )
3
+
4
+ # Generate build-tree exports list only
5
+ set (SWIFT_EXPORTS_FILE ${swift_cmake_builddir} /SwiftExports.cmake )
6
+ get_property (SWIFT_EXPORTS GLOBAL PROPERTY SWIFT_EXPORTS )
7
+ get_property (SWIFT_BUILDTREE_EXPORTS GLOBAL PROPERTY SWIFT_BUILDTREE_EXPORTS )
8
+
9
+ set (SWIFT_CONFIG_EXPORTS ${SWIFT_EXPORTS} ${SWIFT_BUILDTREE_EXPORTS} )
10
+ export (TARGETS ${SWIFT_CONFIG_EXPORTS} FILE ${SWIFT_EXPORTS_FILE} )
11
+
12
+
13
+ set (SWIFT_INCLUDE_DIRS ${SWIFT_INCLUDE_DIR} ${SWIFT_MAIN_INCLUDE_DIR} )
14
+ set (SWIFT_LIBRARY_DIRS ${SWIFT_LIBRARY_OUTPUT_INTDIR} )
15
+
16
+ configure_file (
17
+ SwiftConfig.cmake.in
18
+ ${swift_cmake_builddir} /SwiftConfig.cmake
19
+ @ONLY )
Original file line number Diff line number Diff line change
1
+ # This file provides information and services to the final user.
2
+
3
+ @SWIFT_CONFIG_CODE@
4
+
5
+ set (SWIFT_VERSION @SWIFT_VERSION@ )
6
+ set (SWIFT_MAIN_SRC_DIR @SWIFT_SOURCE_DIR@ )
7
+
8
+ set (SWIFT_INCLUDE_DIRS "@SWIFT_INCLUDE_DIR@" )
9
+ set (SWIFT_LIBRARY_DIRS "@SWIFT_CONFIG_LIBRARY_DIRS@" )
10
+
11
+ # These variables are duplicated, but they must match the LLVM variables of the
12
+ # same name. The variables ending in "S" could some day become lists, and are
13
+ # preserved for convention and compatibility.
14
+ set (SWIFT_INCLUDE_DIR "@SWIFT_INCLUDE_DIRS@" )
15
+ set (SWIFT_LIBRARY_DIR "@SWIFT_CONFIG_LIBRARY_DIRS@" )
16
+
17
+ set (SWIFT_CMAKE_DIR "@SWIFT_CMAKE_DIR@" )
18
+ set (SWIFT_BINARY_DIR "@SWIFT_BINARY_DIR@" )
19
+
20
+ set (CMARK_TARGETS_FILE @SWIFT_PATH_TO_CMARK_BUILD@/src/CMarkExports.cmake )
21
+ if (NOT TARGET libcmark_static AND EXISTS ${CMARK_TARGETS_FILE} )
22
+ include (${CMARK_TARGETS_FILE} )
23
+ endif ()
24
+
25
+ if (NOT TARGET swift )
26
+ set (SWIFT_EXPORTED_TARGETS "@SWIFT_CONFIG_EXPORTS@" )
27
+ include ("@SWIFT_EXPORTS_FILE@" )
28
+ endif ()
You can’t perform that action at this time.
0 commit comments