@@ -116,11 +116,13 @@ endif()
116
116
# `target_link_libraries(Foundation PRIVATE CoreFoundation)`.
117
117
set (CoreFoundation_LIBRARIES $<TARGET_FILE:CoreFoundation>)
118
118
set (CFURLSessionInterface_LIBRARIES $<TARGET_FILE:CFURLSessionInterface>)
119
+ set (CFXMLInterface_LIBRARIES $<TARGET_FILE:CFXMLInterface>)
119
120
get_target_property (CoreFoundation_LINK_LIBRARIES CoreFoundation LINK_LIBRARIES )
120
121
foreach (library ${CoreFoundation_LINK_LIBRARIES} )
121
122
if (NOT library STREQUAL Threads::Threads)
122
123
list (APPEND CoreFoundation_LIBRARIES -l${library} )
123
124
list (APPEND CFURLSessionInterface_LIBRARIES -l${library} )
125
+ list (APPEND CFXMLInterface_LIBRARIES -l${library} )
124
126
endif ()
125
127
endforeach ()
126
128
@@ -264,18 +266,11 @@ add_swift_library(Foundation
264
266
Foundation/URLComponents.swift
265
267
Foundation/UserDefaults.swift
266
268
Foundation/UUID.swift
267
- Foundation/XMLDocument.swift
268
- Foundation/XMLDTD.swift
269
- Foundation/XMLDTDNode.swift
270
- Foundation/XMLElement.swift
271
- Foundation/XMLNode.swift
272
- Foundation/XMLParser.swift
273
269
TARGET
274
270
${CMAKE_C_COMPILER_TARGET}
275
271
LINK_FLAGS
276
272
${CoreFoundation_LIBRARIES}
277
273
${ICU_UC_LIBRARY} ${ICU_I18N_LIBRARY}
278
- ${LIBXML2_LIBRARIES}
279
274
${libdispatch_ldflags}
280
275
$<TARGET_FILE:uuid>
281
276
${Foundation_RPATH}
@@ -363,6 +358,48 @@ add_swift_library(FoundationNetworking
363
358
$<$<PLATFORM_ID:Windows>:CoreFoundationResources>
364
359
Foundation)
365
360
361
+ add_swift_library(FoundationXML
362
+ MODULE_NAME
363
+ FoundationXML
364
+ MODULE_LINK_NAME
365
+ FoundationXML
366
+ MODULE_PATH
367
+ ${CMAKE_CURRENT_BINARY_DIR} /swift/FoundationXML.swiftmodule
368
+ SOURCES
369
+ Foundation/XMLDocument.swift
370
+ Foundation/XMLDTD.swift
371
+ Foundation/XMLDTDNode.swift
372
+ Foundation/XMLElement.swift
373
+ Foundation/XMLNode.swift
374
+ Foundation/XMLParser.swift
375
+ TARGET
376
+ ${CMAKE_C_COMPILER_TARGET}
377
+ LINK_FLAGS
378
+ ${MSVCRT_LINK_FLAGS}
379
+ -L${CMAKE_CURRENT_BINARY_DIR}
380
+ ${libdispatch_ldflags}
381
+ -lFoundation
382
+ ${Foundation_INTERFACE_LIBRARIES}
383
+ ${CFXMLInterface_LIBRARIES}
384
+ ${LIBXML2_LIBRARIES}
385
+ ${Foundation_RPATH}
386
+ ${WORKAROUND_SR9138}
387
+ ${WORKAROUND_SR9995}
388
+ SWIFT_FLAGS
389
+ -DDEPLOYMENT_RUNTIME_SWIFT
390
+ -DNS_BUILDING_FOUNDATION_NETWORKING
391
+ -Xcc -F${CMAKE_CURRENT_BINARY_DIR}
392
+ ${deployment_enable_libdispatch}
393
+ -I;${CMAKE_CURRENT_BINARY_DIR} /swift
394
+ ${libdispatch_cflags}
395
+ $<$<BOOL :ENABLE_TESTING>:-enable-testing>
396
+ $<$<NOT :$<CONFIG:Debug>>:-O>
397
+ DEPENDS
398
+ uuid
399
+ CoreFoundation
400
+ $<$<PLATFORM_ID:Windows>:CoreFoundationResources>
401
+ Foundation)
402
+
366
403
367
404
368
405
if (NOT BUILD_SHARED_LIBS )
@@ -423,6 +460,7 @@ if(ENABLE_TESTING)
423
460
uuid
424
461
Foundation
425
462
FoundationNetworking
463
+ FoundationXML
426
464
CoreFoundation)
427
465
428
466
add_swift_executable(TestFoundation
@@ -572,6 +610,7 @@ if(ENABLE_TESTING)
572
610
DEPENDS
573
611
Foundation
574
612
FoundationNetworking
613
+ FoundationXML
575
614
CoreFoundation
576
615
xdgTestHelper)
577
616
@@ -622,6 +661,8 @@ install(FILES
622
661
${CMAKE_CURRENT_BINARY_DIR} /swift/Foundation.swiftmodule
623
662
${CMAKE_CURRENT_BINARY_DIR} /swift/FoundationNetworking.swiftdoc
624
663
${CMAKE_CURRENT_BINARY_DIR} /swift/FoundationNetworking.swiftmodule
664
+ ${CMAKE_CURRENT_BINARY_DIR} /swift/FoundationXML.swiftdoc
665
+ ${CMAKE_CURRENT_BINARY_DIR} /swift/FoundationXML.swiftmodule
625
666
DESTINATION
626
667
lib/${swift_dir} /${swift_os} /${swift_arch} )
627
668
@@ -630,22 +671,27 @@ set(Foundation_OUTPUT_FILE
630
671
${CMAKE_CURRENT_BINARY_DIR} /${CMAKE_${library_kind} _LIBRARY_PREFIX}Foundation${CMAKE_${library_kind} _LIBRARY_SUFFIX})
631
672
set (FoundationNetworking_OUTPUT_FILE
632
673
${CMAKE_CURRENT_BINARY_DIR} /${CMAKE_${library_kind} _LIBRARY_PREFIX}FoundationNetworking${CMAKE_${library_kind} _LIBRARY_SUFFIX})
674
+ set (FoundationXML_OUTPUT_FILE
675
+ ${CMAKE_CURRENT_BINARY_DIR} /${CMAKE_${library_kind} _LIBRARY_PREFIX}FoundationXML${CMAKE_${library_kind} _LIBRARY_SUFFIX})
633
676
634
677
if (CMAKE_SYSTEM_NAME STREQUAL Windows AND BUILD_SHARED_LIBS )
635
678
install (FILES
636
679
${Foundation_OUTPUT_FILE}
637
680
${FoundationNetworking_OUTPUT_FILE}
681
+ ${FoundationXML_OUTPUT_FILE}
638
682
DESTINATION
639
683
bin)
640
684
install (FILES
641
685
${CMAKE_CURRENT_BINARY_DIR} /${CMAKE_IMPORT_LIBRARY_PREFIX} Foundation${CMAKE_IMPORT_LIBRARY_SUFFIX}
642
686
${CMAKE_CURRENT_BINARY_DIR} /${CMAKE_IMPORT_LIBRARY_PREFIX} FoundationNetworking${CMAKE_IMPORT_LIBRARY_SUFFIX}
687
+ ${CMAKE_CURRENT_BINARY_DIR} /${CMAKE_IMPORT_LIBRARY_PREFIX} FoundationXML${CMAKE_IMPORT_LIBRARY_SUFFIX}
643
688
DESTINATION
644
689
lib/${swift_dir} /${swift_os} )
645
690
else ()
646
691
install (FILES
647
692
${Foundation_OUTPUT_FILE}
648
693
${FoundationNetworking_OUTPUT_FILE}
694
+ ${FoundationXML_OUTPUT_FILE}
649
695
DESTINATION
650
696
lib/${swift_dir} /${swift_os} )
651
697
endif ()
@@ -669,6 +715,15 @@ install(FILES
669
715
CoreFoundation/URL.subproj/module.map
670
716
DESTINATION
671
717
lib/swift/CFURLSessionInterface)
718
+ install (DIRECTORY
719
+ ${CMAKE_CURRENT_BINARY_DIR} /CFXMLInterface.framework /Headers/
720
+ DESTINATION
721
+ lib/swift/CFXMLInterface
722
+ FILES_MATCHING PATTERN "*.h" )
723
+ install (FILES
724
+ CoreFoundation/Parser.subproj/module.map
725
+ DESTINATION
726
+ lib/swift/CFXMLInterface)
672
727
install (PROGRAMS
673
728
${CMAKE_CURRENT_BINARY_DIR} /plutil${CMAKE_EXECUTABLE_SUFFIX}
674
729
DESTINATION
0 commit comments