diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 4fe4db4..2a8ff2c 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -375,12 +375,16 @@
       set(MERGE_ARCHIVES_ABI_TARGET
         "${CMAKE_STATIC_LIBRARY_PREFIX}${LIBCXX_CXX_STATIC_ABI_LIBRARY}${CMAKE_STATIC_LIBRARY_SUFFIX}")
     endif()
+    if (APPLE)
+      set(MERGE_ARCHIVES_LIBTOOL "--use-libtool" "--libtool" "${CMAKE_LIBTOOL}")
+    endif()
     add_custom_command(TARGET cxx_static POST_BUILD
     COMMAND
       ${PYTHON_EXECUTABLE} ${LIBCXX_SOURCE_DIR}/utils/merge_archives.py
     ARGS
       -o $<TARGET_LINKER_FILE:cxx_static>
       --ar "${CMAKE_AR}"
+      ${MERGE_ARCHIVES_LIBTOOL}
       "$<TARGET_LINKER_FILE:cxx_static>"
       "${MERGE_ARCHIVES_ABI_TARGET}"
       "${MERGE_ARCHIVES_SEARCH_PATHS}"
diff --git a/utils/merge_archives.py b/utils/merge_archives.py
index 75d7a54..5c04bc9 100755
--- a/utils/merge_archives.py
+++ b/utils/merge_archives.py
@@ -98,6 +98,12 @@
         help='The ar executable to use, finds \'ar\' in the path if not given',
         type=str, action='store')
     parser.add_argument(
+        '--use-libtool', dest='use_libtool', action='store_true', default=False)
+    parser.add_argument(
+        '--libtool', dest='libtool_exe', required=False,
+        help='The libtool executable to use, finds \'libtool\' in the path if not given',
+        type=str, action='store')
+    parser.add_argument(
         'archives', metavar='archives',  nargs='+',
         help='The archives to merge')
 
@@ -109,6 +115,13 @@
     if not ar_exe:
         print_and_exit("failed to find 'ar' executable")
 
+    if args.use_libtool:
+        libtool_exe = args.libtool_exe
+        if not libtool_exe:
+            libtool_exe = distutils.spawn.find_executable('libtool')
+        if not libtool_exe:
+            print_and_exit("failed to find 'libtool' executable")
+
     if len(args.archives) < 2:
         print_and_exit('fewer than 2 inputs provided')
     archives = [find_and_diagnose_missing(ar, args.search_paths)
@@ -127,8 +140,13 @@
         out = execute_command_verbose([ar_exe, 't', arc])
         files.extend(out.splitlines())
 
-    execute_command_verbose([ar_exe, 'rcs', args.output] + files,
-                            cwd=temp_directory_root, verbose=args.verbose)
+    if args.use_libtool:
+        files = [f for f in files if not f.startswith('__.SYMDEF')]
+        execute_command_verbose([libtool_exe, '-static', '-o', args.output] + files,
+                                cwd=temp_directory_root, verbose=args.verbose)
+    else:
+        execute_command_verbose([ar_exe, 'rcs', args.output] + files,
+                                cwd=temp_directory_root, verbose=args.verbose)
 
 
 if __name__ == '__main__':
